C#和Razor - 您已请求的页面类型未被提供,因为它已被明确禁止.扩展名".cshtml"可能不正确

pee*_*pee 12 c# razor

我查看了其他帖子,但似乎没有人回答我的需要.

  • 我在WebMatrix(ASP.NET)中创建了一个空站点
  • 我在VWD 2013中打开了该网站
  • 我点击了F5,它在http://local.com:59833/ContentPage.cshtml等网址上运行良好
  • 我转到http://local.com/cscsu_bi/ContentPage.cshtml,它不适用于下面的错误

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

    此类页面不会提供.

    描述:未提供您请求的页面类型,因为它已被明确禁止.扩展名".cshtml"可能不正确.请查看下面的网址,确保拼写正确.

    请求的URL:/cscsu_bi/ContentPage.cshtml

  • web.config文件如下

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
    <add key="webpages:Enabled" value="true" />
  </appSettings>
  <system.web>
    <compilation debug="true" targetFramework="4.0" />
  </system.web>
</configuration>
Run Code Online (Sandbox Code Playgroud)

我在Windows 7上.有什么明显的我做错了吗?

谢谢

Arj*_*nbu 8

我错过了Microsoft.AspNet.WebPagesNuGet包.安装它解决了我的问题.(此包有依赖关系Microsoft.Web.Infrastructure,并Microsoft.Web.Razor因此包括他们为你)

如果您使用NuGet控制台,只需键入:

Install-Package Microsoft.AspNet.WebPages
Run Code Online (Sandbox Code Playgroud)


Dan*_*ams 5

我在许多机器上设置了Razor,并且经常发现我需要在我的bin文件夹中包含以下DLL:

  • System.Web.Razor.dll
  • System.Web.WebPages.Deployment.dll
  • System.Web.WebPages.dll
  • System.Web.WebPages.Razor.dll
  • Microsoft.Web.Infrastructure.dll


小智 2

看看这篇文章。

http://www.asp.net/web-pages/overview/more-resources/aspnet-web-pages-(razor)-troubleshooting-guide

在查看所有 IIS 设置和参考后,这解决了我的问题。

确保您网站的根目录中至少有一个 .cshtml 文件。