2009-03-12 8 views
0

これはすでに尋ねられているようですが残念です。ASP.NET MvcとWebフォームを連携させるには

現在、私は現在、小さな機能に取り組んでおり、現在のWebフォームWebアプリケーションにASP.NET MVCフレームワークを実装しようとしています。私は最近スタックオーバーフローで発見したWebフォームとMVCを連携させるためにPDF文書Professional ASP.NET 3.5 Mvc Chapter 13に従っています。 System.Web.Mvc、System.Web.Routing、およびSystem.Web.Abstractions

  • は私のウェブへの2つのディレクトリを追加したライブラリへの参照を追加しました

    1. :私はすべての3つのステップを完了していますアプリケーション:コントローラとビュー

    2. web.configを更新して、手順1で説明した3つのアセンブリをロードし、UrlRoutingModule HttpModuleを登録しました。また、Global.asaxファイルに初期ルーティング設定を追加しました。

      RouteTable.Routes.MapRoute( "デフォルト"、 "{コントローラ}/{アクション}/{ID}"、new {コントローラ= "サポート" action = "Index"、id = ""} );

    私は次のコードでとNullReferenceExceptionを取得しようとすると、ASP.NET MVCフレームワーク以下の私の新しく作成されたページを実行すると:私のコントローラで

    <%= Html.Encode(ViewData["Message"]) %> 
    

    私は「[メッセージをViewDataをを持っています"]が"メッセージ "に設定されています。テストと同じように。私はASP.NET MVCで動作するように私のWebアプリケーションを設定する何かを逃したことがありますか?

    ご協力いただければ幸いです。それは設定のすべてが権利を取得するよりも、

    おかげで、初期のベータ版で遊んでから

  • +0

    ビューデータが正しく設定されていることを確認するコントローラーアクションのユニットテストがありますか? – tvanfosson

    答えて

    0

    は、今日まで、私はそれが簡単にソリューションに新しいMVCアプリケーションおよび「インポート」私exsitingファイルを作成するために見つけます既存のアプリケーションで使用できます。私はテンプレートから私のために書いたことができる配管を設定することに熱く、重くなる理由はない。おそらく私はあまりにも怠惰です。

    「レガシーASP.NET」WebフォームをMVCで正常に動作させることができます。プロジェクト全体への唯一の欠点は、アプリケーションをdefault.aspxにルーティングさせてから始めます。複数のステップを実行してMVCを組み込むよりもずっと簡単です。

    私はこれがあなたの質問への直接的な答えではないことを知っていますが、あなたの問題を解決するように努力していると思います。もう1つのメリットは、バグ修正が来た場合に備えて古い「レガシー」ソースを残しておくことです。しかし、とにかく、あなたはソース管理下にあるべきです。

    関連する問題