首页 文章

IIS Express(WebMatrix 2)不会在WebAPI项目(VS10 / WinXP)中提供.cshtml文件

提问于
浏览
1

我试图通过WebMatrix 2在WinXP上运行一个WebAPI项目 . 我在尝试浏览index.cshtml(在根目录中)时遇到此错误:

notservederror

"This type of page is not served."

我在Visual Studio 2010中的MVC4项目类型下创建了一个WebAPI项目,然后将项目设置为在IIS Express下运行 .

What I've Tried:

VS创建的WebMatrix站点中的.NET CLR设置是.NET 4.0(集成) .

我已经尝试过使用Web.config中的 runAllManagedModulesForAllRequests 设置,没有运气 .

开发服务器和IIS Express中都会发生此错误 .

我已经重新启动了 .

However, 如果我通过WebMatrix2 UI创建一个站点,它可以工作 . 通过WebMatrix添加到该网站的Razor .cshtml文件渲染得很好 .

TIA!

1 回答

  • 9

    SUCCESS!

    问题是默认WebAPI模板web.config中的一行:

    <appSettings>
        <add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" />
        <add key="webpages:Version" value="2.0.0.0" />
        <add key="webpages:Enabled" value="false" />  <-- BAD!!!!
        <add key="PreserveLoginUrl" value="true" />
        <add key="ClientValidationEnabled" value="true" />
        <add key="UnobtrusiveJavaScriptEnabled" value="true" />
      </appSettings>
    

    webpages:Enabled 设置设置为 true 解决了问题,现在我的.cshtml文件正常工作 . 希望这有助于其他人 .

    这个问题解释了 webpages:Enabled 设置:what is the function of webpages:Enabled in MVC 3 web.config

相关问题