![]() |
1
71
我是这样做的: 基本上,这两个应用程序都使用存储在sqlserver中的本机.NET会话状态。通过使用同一个机器密钥并对存储过程进行小调整,两个应用程序都可以共享任何会话密钥和/或表单授权。 两个应用程序在web.config中都会这样做:
会话状态数据库需要在数据库服务器上设置,这两个应用程序都可以看到。 执行此操作的文档: http://msdn.microsoft.com/en-us/library/ms229862(VS.80).aspx 需要运行的命令: C:\Program Files(x86)\Microsoft Visual Studio 9.0\vc\bin>aspnet\u regsql.exe-e-ssadd--sstype p-s。\sqlexpress 存储过程(tempgetappid)调整为:
|
![]() |
2
9
问题是会话密钥的作用域是应用程序,因此具有相同会话密钥的两个应用程序实际上具有不同的会话。 你可以做两件事之一:
根据Justin的评论,澄清选项2并不是指进程外会话的SQL状态管理器。我的意思是您可以手动管理两个会话的共享数据,可能使用数据库。 |
![]() |
3
0
您可以使用一个通用的机器密钥在给定用户的两个应用程序中生成相同的会话ID。此外,还应该计划将这两个应用程序的会话存储在一个公共存储区(如ASP.NET状态服务或分布式缓存)中。 您可以使用ncache分布式缓存,它提供不同应用程序之间的会话共享功能。为会话状态设置内的两个应用程序指定相同的应用程序ID标记,如果两个应用程序都生成了相同的会话ID,则可以共享会话对象。 |
![]() |
A B · C#Excel自动调整列避免长文本时出错 6 月前 |
![]() |
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 6 月前 |
![]() |
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 6 月前 |
|
Sei · Avalonia/WPF将路由器传递到控制模板 7 月前 |