2016-12-15 9 views
0

IISサーバー上のMy Asp.net MVC 5 Webアプリケーションは、URLアプリケーション名パラメータに基づいて異なる顧客に対して複数のインスタンスを読み込むことができません。言い換えると、異なるデータベースのアプリケーション名と同時に2つのアプリケーションをログインすることはできません。Aspnet mvcマルチテナント複数インスタンスの問題

異なるアプリケーション名をパラメータとしてコントローラに渡し、それを使用して異なるインスタンスの同じスキーマを持つ異なるデータベースに動的に接続します。 ASP.NETメンバーシップのアプリケーション名を使用して、コントローラ内のさまざまなインスタンスを識別します。

例:同じデモ認証情報(username:user; password:pass)を使用して2つのURLに続いて異なるブラウザを使用してログインすると、毎回1つのインスタンスしか表示されません。私は両方にログインし、以前のログインoneを更新することができます。それは、後のログインインスタンスに変更されます。

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

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

+0

私は、あなたのブラウザセッションに関する限り、シーンの背後にいるユーザーを切り替えて、両方のインスタンスを現在のユーザーに切り替えると思います。 –

答えて

0

我々のコードの一部は、 "静的" なタイプを使用する場合、私はこのような問題を経験しました。 IISはブラウザセッションごとにwebappの新しいインスタンスを作成しますが、スタティックコードはそれらのセッションで共有されていました。第2のアイデアは、あなたのユーザー識別コードが(セッション変数とは対照的に)アプリケーション変数を使用していないことを確認することです。

+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

関連する問題