6

.cshtml拡張機能付きの Web ページをホストしたホストがあります。私のホストは、ASP および .NET ホスティングを提供するarvixe.comですが、Web ページを読み込もうとすると、このエラー メッセージが表示されます。

「/」アプリケーションでサーバー エラーが発生しました。

このタイプのページは提供されません。

説明: 明示的に禁止されているため、リクエストしたタイプのページは提供されません。拡張子 '.cshtml' が正しくない可能性があります。以下の URL を見直して、スペルが正しいことを確認してください。

要求された URL: /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>

しかし、私はすべてを試し、別の行に貼り付けましたが、何も機能しませんでした。私は何を見逃しているか、間違っていますか?

4

3 に答える 3

8

MVC機能を使用して作成しておらず、ビューまたはカスタムエリアフォルダーの外側にあるかみそりのビューだけを読み込もうとしていると思います。

次に、Web.configでWebページキーを有効にする必要があります。これは、.Net4.0ではデフォルトで無効になっています。

<add key="webpages:Enabled" value="true" />
于 2013-02-14T11:25:29.927 に答える
2
<appSettings>
<add key="webpages:Enabled" value="true" />

于 2014-06-18T17:40:16.867 に答える
1

IIS 10 を使用して Windows 10 Pro でこれを修復するのは悪夢でした。2 日かかりましたが、次の手順を使用して最終的に目的の結果を達成することができました。

  1. Visual Studio で Web サイトを開きます。これを行う方法は、[ファイル] > [新規] > [Web サイト] に移動し、[ ASP.Net 空の Web サイト]を選択し、[OK] をクリックする前に、場所をプロジェクトの場所に変更します。私の場合、私は自分のプロジェクトを持っていましたC:\inetpub\wwwroot\AspNet\Projects\Test

  2. インターネット インフォメーション サービス マネージャーを開きます (「cortana」検索をクリックし、IIS と入力します。IIS がインストールされていれば表示されます)。ServerName > Sites > Default Web Site > ...の下でプロジェクト フォルダーを見つけ、それを右クリックして [ Convert to web Application ] ボタンをクリックします。ほとんどの場合、プロンプトで [ OK ] をクリックしてデフォルトを受け入れるだけで十分です。

  3. 次の Web.Config ファイルまたは類似のものを使用します。NuGet は一部の設定を上書きする場合がありますが、これは大きな問題ではありません。

<?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ファイルが存在する場合は削除します。これは、IIS が Razor/ASP を実行するように設計されているため、その bin フォルダー内の何かが破損していると想定する必要があるためです。Visual Studio プロジェクトでは、これらのファイルが削除されたことを認識できるように、プロジェクトを更新する必要があります。これは、ソリューション エクスプローラーフレームの上部にあるメニューの更新ボタンをクリックすることで実行できます。Visual Studio プロジェクトで、[ツール] > [NuGet パッケージ マネージャー] > [パッケージ マネージャー コンソール]に移動し、次の 2 つのコマンドを入力します。

    インストール パッケージ Microsoft.AspNet.Razor -バージョン 3.0.0

    インストール パッケージ Microsoft.AspNet.WebPages

Windows 10 Pro 上の IIS 10 で *.cshtml ページをレンダリングするには、これで十分でした。

于 2016-09-20T10:33:10.230 に答える