2016-12-15 116 views
0

在IIS服务器上的我的Asp.net MVC 5 Web应用程序无法为基于URL应用程序名称参数的不同客户加载多个实例。换句话说,我们无法同时在不同的数据库中登录两个应用程序。Aspnet mvc多租户多实例问题

我设置应用程序链接将不同的应用程序名称作为参数传递给控制器​​,并使用它为不同的实例动态连接到具有相同模式的不同数据库。我使用ASP.NET Membership的应用程序名称来识别控制器中的不同实例。

例如:我使用不同的浏览器以相同的演示凭证(用户名:user;密码:pass)登录以下两个url,每次只能显示一个实例。我可以同时登录并刷新以前的登录名。它将更改为更高版本的登录实例。

https://localhost.test.info/CM/Account/Login?app=c1

https://localhost.test.info/CM/Account/Login?app=c2

+0

我认为就浏览器会话而言,您已将用户切换到场景后面,并将两个实例切换到当前用户。 –

回答

0

我经历的一个问题是这样使用的时候我们的代码部分 “静态” 的类型。 IIS会为每个浏览器会话创建一个新的webapp实例,但静态代码是在它们之间共享的。第二个想法是确认您的用户身份代码没有使用应用程序变量(与会话变量相反)。

+0

感谢codestever给你的建议,但我没有使用静态类型或应用程序变量。 – Shailendra

+0

嗨Codestever你是对的那里有一些静态类型。我使用具有静态类型属性e,g的Aspnet Membership。静态ApplicationName。 https://msdn.microsoft.com/en-us/library/system.web.security.membership.applicationname(v=vs.110).aspx – Shailendra