asp.net mvc4跨域会话丢失

时间:2012-10-26 12:48:03

标签: asp.net-mvc session dns area

我正在使用ASP.net MVC4创建一个新的Web应用程序

我们的应用程序网站运行在2个doamin名称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

感谢您的时间

0 个答案:

没有答案