1

ASP.net MVC4 を使用して新しい Web アプリケーションを作成しています

当社のアプリケーション Web サイトは、2 つのドメイン名 www.domain1.com および www.domain2.com で実行されます。

多くの一般的なコントローラー/ビューがあるため、ドメインにバインドされたエリアを実装しました

public override string AreaName
        {
            get
            {
                return "NS1";
            }
        }
        public override void RegisterArea(AreaRegistrationContext context)
        {
            context.MapRoute(
            "NS1_default", "{controller}/{action}",
            new { controller = "Home", action = "Index" },
            new { hostname = new areaRedirect("www.domain1.com") }
        ).DataTokens["UseNamespaceFallback"] = true;
        }

そして domain2 の場合

public override void RegisterArea(AreaRegistrationContext context)
    {
        context.MapRoute(
        "NS2_default", "{controller}/{action}",
        new { controller = "Home", action = "Index" },
        new { hostname = new areaRedirect("www.domain1.com") }
        ).DataTokens["UseNamespaceFallback"] = true;
    }

これは正常に動作し、必要なものはすべて実行しますが..

あるエリアから別のエリアに切り替えると、ログインしているセッションが失われます。

ログインしたままにする方法はありますか?アカウント コントローラーは両方の領域に共通です。

つまり、基本的に同じアプリ、同じサーバーで、名前空間がたまたまドメイン名になっているだけです

www.somedomain/domain1/action を表示する代わりに、www.domain1/action を取得します

御時間ありがとうございます

4

0 に答える 0