C# 如何将集合传递到模式对话框窗口?

C# 如何将集合传递到模式对话框窗口?,c#,javascript,asp.net,C#,Javascript,Asp.net,我想知道,是否有可能在页面之间传递集合。我的意思是说我有一个客户端JavaScript模式对话框,我想在上面使用我的集合。早些时候,我使用Session[]来共享该值,但它对我来说越来越糟糕,因为它总是显示第一个值。未更新中的任何值更改 因此,无论何时显示我的弹出窗口,我都希望集合移动到子对话框。从那里,我将提取集合,执行一些操作,然后再次将其返回到父页面,以防止回发和会话管理 我想你们都明白了。如果不清楚,请添加注释。您可以或只需将列表转换为逗号分隔的字符串,这将很容易用JavaScript解

我想知道,是否有可能在页面之间传递集合。我的意思是说我有一个客户端JavaScript模式对话框,我想在上面使用我的集合。早些时候,我使用Session[]来共享该值,但它对我来说越来越糟糕,因为它总是显示第一个值。未更新中的任何值更改

因此,无论何时显示我的弹出窗口,我都希望集合移动到子对话框。从那里,我将提取集合,执行一些操作,然后再次将其返回到父页面,以防止回发和会话管理

我想你们都明白了。如果不清楚,请添加注释。

您可以或只需将列表转换为逗号分隔的字符串,这将很容易用JavaScript解析

这是另一种选择。查看链接

从链接:

如果需要创建客户端 JavaScript数组对象,并带有一些集合 值,使用此方法添加值 指向特定数组

要将值1、2和3添加到名为FavoriteNumbers的客户端数组对象,请使用以下服务器端代码:

RegisterArrayDeclaration("FavoriteNumbers", "1")
RegisterArrayDeclaration("FavoriteNumbers", "2")
RegisterArrayDeclaration("FavoriteNumbers", "3")
此代码将发出以下客户端脚本:

<script language="javascript">
<!--
   var FavoriteNumbers =  new Array(1, 2, 3);
      // -->
</script>


不更新是什么意思?您始终可以将会话变量强制转换为适当的类型,更改值,然后将其添加回会话?是的,我知道,但在某些地方,我认为我的会话没有使用新值进行更新。听起来您需要使用JavaScript解释.NET列表集合。是吗?是的,在Codebehind中,我想将集合传递给子页面。在这种情况下,我认为您需要转换为JavaScript可以轻松使用的东西,例如JSON。