'/'应用程序中的服务器错误。此类页面不会提供

时间:2012-08-23 07:18:32

标签: asp.net razor web-config

我有一个主持人,我在其中托管了一个扩展名为.cshtml的网页。我的主机是 arvixe.com ,提供ASP和.NET托管,但当我尝试加载我的网页时,我收到此错误消息。

  应用程序中的服务器错误。

     

此类网页未投放。

     

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

     

请求的网址:/samples/WoT/Default.cshtml

     

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

我读了一些东西,我必须在我的web.config文件中写一些东西才能使它工作 像这样

<compilation>
  <assemblies>
    <add assembly="System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
  </assemblies>
  <buildProviders>
    <add extension=".cshtml" type="System.Web.WebPages.Razor.RazorBuildProvider, System.Web.WebPages.Razor"/>
  </buildProviders>
</compilation>

但是我尝试了所有东西,将它粘贴在不同的行上,没有任何效果。我错过了什么或做错了什么?

3 个答案:

答案 0 :(得分:6)

我相信您没有使用MVC功能并尝试仅在视图外部加载剃刀视图或自定义区域文件夹。

然后你需要在Web.config中启用webpages键,默认情况下在.Net 4.0中禁用它。

<add key="webpages:Enabled" value="true" />

答案 1 :(得分:1)

<appSettings>
<add key="webpages:Enabled" value="true" />

答案 2 :(得分:0)

使用IIS 10在Windows 10 Pro中修复此问题是一场噩梦,需要两天时间,但我终于可以使用以下步骤获得所需的结果:

  1. 在Visual Studio中打开您的网站。这样做的方法是转到文件&gt;新&gt;网站,然后选择 ASP.Net空网站并在单击确定之前将位置更改为项目位置。就我而言,我的项目是C:\inetpub\wwwroot\AspNet\Projects\Test

  2. 打开互联网信息服务管理器(点击“cortana”搜索并输入IIS,只要你安装了它就会出现)。在 ServerName&gt;下找到您的项目文件夹。网站&gt;默认网站&gt; ... ,右键单击它并单击“转换为Web应用程序”按钮。在大多数情况下,通过点击确定接受默认设置就足够了。

  3. 使用以下Web.Config文件或类似文件。 NuGet可能会覆盖某些设置,但这不是一个大问题。

  4. <?xml version="1.0" encoding="utf-8"?>
    <!--
      For more information on how to configure your ASP.NET application, please visit
      http://go.microsoft.com/fwlink/?LinkId=301879
      -->
    <configuration>
      <appSettings>
        <add key="webPages:Version" value="3.0.0"/>
        <add key="webpages:Enabled" value="true"/>
      </appSettings>
      <system.web>
        <compilation debug="true" targetFramework="4.0"/>
      </system.web>
      <runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        </assemblyBinding>
      </runtime>
    </configuration>

    1. 删除 bin 文件夹和 packages.config 文件(如果存在)。这是因为我们必须假设该bin文件夹中的某些内容已损坏,因为IIS旨在运行Razor / ASP。在Visual Studio项目中,您需要刷新项目,以便知道这些文件已被删除。这可以通过单击 Solution Explorer 框架顶部菜单中的刷新按钮来完成。在您的visual studio项目中,转到工具&gt; NuGet包管理器&gt;包管理器控制台并输入以下两个命令。

      安装包Microsoft.AspNet.Razor -Version 3.0.0

      安装包Microsoft.AspNet.WebPages

    2. 这足以让Windows 10 Pro上的IIS 10呈现* .cshtml页面。