'/'应用程序中的ASP.NET MVC3/Razor服务器错误

Joe*_*oel 3 asp.net-mvc visual-studio-2010 asp.net-mvc-3

当我从Visual Studio"运行"一个MVC应用程序时,我遇到了间歇性错误.这是错误:

'/'应用程序中的服务器错误.

无法找到该资源.说明:HTTP 404.您要查找的资源(或其中一个依赖项)可能已被删除,名称已更改或暂时不可用.请查看以下网址,确保拼写正确.

请求的URL:/Views/DDF/Edit.vbhtml


版本信息:Microsoft .NET Framework版本:4.0.30319; ASP.NET版本:4.0.30319.225

我的默认路由设置如下:

Shared Sub RegisterRoutes(ByVal routes As RouteCollection)
    routes.IgnoreRoute("{resource}.axd/{*pathInfo}")
    routes.MapRoute( _
        "Default", _
        "{controller}/{action}/{id}", _
        New With {.controller = "DDF", .action = "Index", .id = UrlParameter.Optional} )
End Sub
Run Code Online (Sandbox Code Playgroud)

通常,当我启动应用程序时,浏览器会尝试显示URL http:// localhost:49999 / 并执行并呈现DDFController的Index操作.偶尔,VS会尝试打开以下网址:

HTTP://本地主机:49999 /查看/ DDF/Edit.vbhtml

我不知道为什么它会尝试显示编辑操作,或者为什么它会将".vbhtml"添加到网址中,但它会因错误而失败.

那么,为什么Visual Studio使用了错误的url(使用vbhtml扩展名)以及如何修复它?

Mar*_*oth 6

当您使用visual studio编辑Web应用程序(Web表单)时,有一个选项可以在编辑器中加载您当前拥有的页面(在Web应用程序的属性下,Web选项卡和名为Start Action) : 当前页面).

它非常粗糙,只是启动Internet Explorer(假设这是您的浏览器),其中包含您正在编辑的文件位置的路径.

由于这不是MVC的工作方式,我不建议使用此选项,而是将其更改为"特定页面"或每次启动时加载正确页面的其他选项

马丁

  • 像Martin说的那样将它改为"特定页面"然后将相关的文本框保留为空可以解决我的问题 - 当你运行它时,网站的"根"将始终打开. (2认同)