Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用根据页面具有不同数据的会话?_C#_Asp.net_Session_Datatable_Popup - Fatal编程技术网

C# 如何使用根据页面具有不同数据的会话?

C# 如何使用根据页面具有不同数据的会话?,c#,asp.net,session,datatable,popup,C#,Asp.net,Session,Datatable,Popup,我有一个将数据表存储到会话中的弹出窗口,这样在弹出窗口完成并退出后,原始页面将使用该会话重新绑定其表。 我还有另一个页面使用相同的弹出窗口,因此会话肯定会与前一个相同。 如果用户打开了两个选项卡,每个选项卡都有一个页面,那么他们可以在不同选项卡中使用两个弹出窗口,这会给会话带来问题,因为其中的数据将在两个页面之间翻转 有没有办法只将会话数据保存在该选项卡/窗口中?最好避免在会话中存储大数据。数据库调用可能是一种替代方法,但如果必须为每个选项卡使用会话,请使用如下唯一名称。通过在打开弹出窗口时传递

我有一个将数据表存储到会话中的弹出窗口,这样在弹出窗口完成并退出后,原始页面将使用该会话重新绑定其表。 我还有另一个页面使用相同的弹出窗口,因此会话肯定会与前一个相同。 如果用户打开了两个选项卡,每个选项卡都有一个页面,那么他们可以在不同选项卡中使用两个弹出窗口,这会给会话带来问题,因为其中的数据将在两个页面之间翻转


有没有办法只将会话数据保存在该选项卡/窗口中?

最好避免在会话中存储大数据。数据库调用可能是一种替代方法,但如果必须为每个选项卡使用会话,请使用如下唯一名称。通过在打开弹出窗口时传递一些查询字符串,可以区分服务器端弹出代码中每个链接的datatable

Session["DataTableForTab_1"]


您应该使用唯一的会话标识符。你不应该有这种性质的冲突。您还需要积极的会话变量管理。会话进出的数据量可能会变得无法管理。我想使用唯一的名称,但两个页面使用相同的弹出窗口,只有一个通用名称。打开弹出窗口时,通过传递一些查询字符串,您可以在服务器端的弹出代码中区分每个链接的datatable
Session["DataTableForTab_2"]