私の質問が十分に説明できない場合はお詫び申し上げます。私は、複数の企業アカウントを持つMVCアプリケーションを持っています。だから私は会社のユーザーがいて、私は顧客のユーザーがいます。顧客は、どの会社と取引をしたいのか、ログインしたいのかを決めることができます。まず、company1との取引をしてから、ログアウトしてログインしてcompany2と取引します。Asp.Net MVC複数のリクエスト(スレッド)を処理できるグローバル情報を格納する方法
私は_Layout.cshtmlページを持っています。そのページには、顧客のユーザーがログインした会社に従ってページをカスタマイズできるようにしたいと考えています。最初はグローバルな静的変数を作成しましたが、user1がcompany1にログインした後、user2がcompany2にログインするとuser1に表示される情報が変更され、突然company2が表示されるため動作しません。
私のレイアウトページでは、たとえば会社名などを表示したいと思います。
namespace Hylton
{
public class G
{
public static string OrgName
{
get;
set;
}
public static int OrgId
{
get;
set;
}
public static string OrgEmail
{
get;
set;
}
}
}
そして、私の_Layout.cshtmlに、私はこのようなものだった:私はこのクラスを作成した最初の何をしたかを示すために
<li class="hi-logo">
<a href="~/" class="m-l-10">
@G.OrgName
</a>
</li>
することで見上げることなくこれを行うには良い方法はあります毎回データベース?
なぜ静的ですか?なぜ普通のプロパティはありませんか? –
これで最善の方法は何でしょうか? BaseViewModelを使用して、すべてのビューモデルがベースコントローラーで使用されます。 – joks
BaseViewModelを使用できます。または、ビューデータまたはビューバックに会社名を渡すこともできます。 –