无法运行区域内配置的cshtml

时间:2011-09-30 18:30:32

标签: asp.net-mvc-3

我在MVC项目中定义了一个名为Account的区域,在这个区域的视图下我有Logon.cshtml。在web.config中,我得到了以下

 <authentication mode="Forms">
    <forms loginUrl="~/Areas/Account/LogOn" timeout="600" />
  </authentication>

我在控制器上使用Authorize属性,但是当我运行项目时,会出现以下错误

  “/”应用程序中的服务器错误   无法找到资源   说明:HTTP 404.您要查找的资源(或其中一个依赖项)可能已被删除,名称已更改或暂时不可用。请查看以下网址,确保拼写正确   请求的URL:/ Areas / Account / LogOn

任何想法我做错了什么?

1 个答案:

答案 0 :(得分:0)

虽然文件存储在名为Area的文件夹中,但这并不意味着到此文件的路由是/areas/account/logon

查看“帐户”文件夹中的AccountAreaRegistration.cs。此文件中定义的AreaName(最有可能是Account)是到该区域的路径的初始部分。此外,context.MapRoute行将具有您所在区域的默认路线。

很有可能,特别是如果您没有编辑区域注册文件,则放入web.config的正确路径为~/account/logon