2010-08-12 45 views
1

您好,我将我的asp.net web表单应用程序迁移到asp.net mvc。即包含.aspx页面和mvc视图。我正在使用Forms身份验证,而不是在asp.net mvc视图中获取Forms身份验证。asp.net mvc迁移,表单身份验证问题

即。在登录状态下,在asp.net表单页面中获取Request.IsAuthenticated为true,并在mvc视图中获取false。

+0

您的登录系统是以MVC还是webforms(即标准的asp.net登录控件)完成的? – KallDrexx 2010-08-12 18:45:21

回答

1

如果您正在使用ASP.NET的成员资格提供程序身份验证和授权方法应该在Web窗体和MVC两个框中工作。您可以尝试调用Membership.GetUser()方法并调试以查看结果。它会解决问题,如果你张贴你调用Request.IsAuthenticated的地方的代码。

一个说明有关IsAuthenticated方法 - 如果用户在一个控制器进行身份验证和你相同的请求调用Request.IsAuthenticated视图它会返回false。这是打算的行为,而不是一个错误。原因是身份验证cookie已附加到响应中,但该检查是在通常不会更改的请求上进行的。记住这一点。