41

引き継いだプロジェクトを実行しようとすると、このエラーが発生します。

web.configに問題があると思いますが、何を探すべきかわかりません。

タイプ「System.Web.Mvc.MvcWebRazorHostFactory」の式は、リターンタイプ「System.Web.WebPages.Razor.WebRazorHostFactory」には使用できません。

同じことに関する提案は大歓迎です。

4

4 に答える 4

50

Web.Configの行を置き換えてみてください

<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />

<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />

(MvcWebRazorHostFactoryをバージョン4.0.0.0に設定します)

于 2013-08-06T13:03:22.897 に答える
36

すべてのViews/web.configでMvcWebRazorHostFactoryをバージョン5.0.0.0に設定します

<system.web.webPages.razor>
    <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
于 2013-10-18T01:07:07.370 に答える
8

まだ苦しんでいる他のすべての人にとって、私の解決策は上記のようなものでしたが、微調整を加えました-プロジェクト参照でファクトリタイプのバージョンをSystem.Web.Mvcdllのバージョンと一致させる必要がありました。お持ちのバージョンを確認するには:

  1. プロジェクトの「参照」を展開します
  2. System.Web.Mvcを右クリックして、バージョンを確認します

    ここに画像の説明を入力してください

  3. ビューフォルダのweb.configを更新します

だから私の場合は以下のようでした:

  <system.web.webPages.razor>
    <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
于 2016-05-25T23:34:25.950 に答える
0

同じエラーが発生しました。うまくいったこと:プロジェクトを右クリックして、[NuGetパッケージの管理]を選択します。MicrosoftASP.NETRazorをインストールします。プロジェクトを再構築します。

于 2017-01-12T00:56:06.527 に答える