我有一个在 .NET 3.5 框架中的 MVC 应用程序,它托管在 IIS 7 中。我在 IIS 7 的根目录中创建了该应用程序。当我尝试通过路径“http://本地主机“。但如果我尝试访问“Views”文件夹下的任何文件,我就会收到以下错误。
找不到资源。描述:HTTP 404。您正在寻找的资源(或其依赖项之一)可能已被删除、名称已更改或暂时不可用。请检查以下 URL 并确保其拼写正确。
我尝试了所有方法来修复这个错误,但都无济于事。如果有人能帮助我找出问题所在,我将不胜感激。
谢谢
答案1
在 ASP.NET MVC 中,您无法直接浏览视图文件。您必须使用在站点的 Application_Start() 事件中设置的路由。
例如,一个新的 ASP.NET MVC 项目在 global.asax 中默认添加此路由:
routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = "" }
);
它还添加了默认控制器和动作:
public class HomeController : Controller {
public ActionResult Index() {
ViewData["Message"] = "Welcome to ASP.NET MVC!";
return View();
}
}
以及 Views/Home 下的一个名为 Index.aspx 的视图。
http://mysite.com/Views/Home/Index.aspx
您可以使用 以下地址代替http://mysite.com/Home/Index
您可以在这里了解有关路由的更多信息:http://www.asp.net/learn/mvc/#MVC_Routing
答案2
我想补充一点:我很确定您真正需要的是在您的 IIS 服务器上添加 .ASPX 重定向。如果您使用的是 IIS6,可以按照以下步骤完成此操作:
- 右键单击您的网站
- 转至属性
- 主目录选项卡,然后选择配置
- 在“Wild Card Application Maps”中,请添加 .ASPX 的路径。最后,请取消勾选“验证文件是否存在”。
如果没有上述步骤,您的 ASP.NET MVC 将无法正常工作。我以前也遇到过这种情况,我现在的主机ASPHostCentral,建议我上述步骤:)
祝你好运!
答案3
- 右键单击您的网站
- 转至属性
- 单击主目录选项卡,然后选择配置
- 在“Wild Card Application Maps”中,请添加 .ASPX 的路径。最后,请取消勾选“验证文件是否存在”。
答案4
如果你确实需要,你可以使用忽略路线来查看这些文件 - 例如,如果它们是普通的 .html 文件:
routes.IgnoreRoute("Views/{name}.html");
这样您就可以直接浏览 Views 文件夹中的任何 .html 文件,而无需定义路由、控制器等。路由系统可以根据您的需要轻松地进入和退出,这一点非常好。
您可以在这里通过 4 个步骤了解路线: http://www.asp.net/learn/mvc/#MVC_Routing