2

asp.net 4 プロジェクトを MVC 3 に移行中です。すべてが移行されたら、MVC4 に移行する予定です。私はこの投稿に従いました:

http://www.hanselman.com/blog/IntegratingASPNETMVC3IntoExistingUpgradedASPNET4WebFormsApplications.aspx

Area を作成し、Controllers フォルダーと Views フォルダーを追加し、コントローラーを作成しました。

public class HomeController : Controller
{
  public ActionResult Index()
  {
    return View();
  }
}

アプリケーションを実行し、標準の Aspx ページをチェックしてから正常に動作し、コントローラーのパスに移動して、「エラー: 値を null にすることはできません。パラメーター名: incomingMarkupParser」エラーを取得します。そこで、return View(); を削除しました。それを return Content("Hello world"); に置き換えました。これはまったく問題なく機能しました。

それで、私は自分自身に考えました、その領域に問題があるのですか... Controllers and Viewsフォルダーを作成して、もう一度試しました-同じ問題です。

System.Web.Razor はバージョン 2.0.0.0 System.Web.WebPages はバージョン 1.0.0.0 (バージョン 2 も試しました)

Web.Config

  <assemblies>
    <add assembly="System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
    <add assembly="System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add assembly="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
    <add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
    <add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
    <add assembly="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
    <add assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
    <add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
    <add assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
  </assemblies>

  <namespaces>
    <add namespace="System.Web.Helpers" />
    <add namespace="System.Web.Mvc" />
    <add namespace="System.Web.Mvc.Ajax" />
    <add namespace="System.Web.Mvc.Html" />
    <add namespace="System.Web.Routing" />
    <add namespace="System.Web.WebPages"/>
  </namespaces>

問題が Razor に関係していることはわかっていますが、何が見つかりません。他の誰かがこれを経験しましたか?もしそうなら、彼らはどのようにそれを克服しましたか?

前もって感謝します。

4

3 に答える 3

1

web.configのすべてのRazor参照はどこにありますか?(これが本当の問題だと思います)例については、このページを参照してください

このリンクとそこにあるコードを試して、すべての例外(飲み込まれたものを含む)を確認することもできます。

于 2012-11-07T15:49:10.380 に答える
1

ビュー フォルダーに web.config があることを確認しましたか? それがあなたのかみそりの設定が行くところだと思います。または、少なくともそれが私が私のものを手に入れた方法です。新しい MVC プロジェクトの Views > web.config を見てみてください。

これが役立つことを願っています。

于 2013-03-27T15:05:30.490 に答える