.NET MVCアプリケーションの既存のコードで作業するように求められましたが、新しいページを追加する必要があります。私はこれをしましたが、問題があります。.NET MVC Controllerビューがロードされていません
アプリケーションの共通レイアウトは、_Layout.cshtml
ページで定義されています(新しいページには同じレイアウトを使用する必要があります)。パスはViewstart.cshtml
ページにあります。
これは、既存のページがどのように動作するかです: コントローラはこのコードを持っています
public ViewResult Index()
{
TransactionHistoryViewModel model = new TransactionHistoryViewModel();
model.SearchType = "TransactionHistory";
return View(model);
}
コードは、すぐ上の行を実行した後、それは次のように_ViewStart.cstml
のファイルに進みと実行、実行された場合:
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
しかし、私は、私が作成したコントローラの同じロジック(私はすでにモデルを設定している)を使用してみてください:
をpublic ViewResult Index()
{
TransportPlannerViewModel model = new TransportPlannerViewModel();
model.SearchType = "TransportPlanner";
return View(model);
}
コードは上記のブロックの後で実行を停止し、_ViewStart
ファイルに移動しません(ブレークポイントを使用してこれを認識しました)。
私の雇用者は、既存のコードとの一貫性を保つために必要なので、元のコーディングスタイルに固執しようとしました。これは間違ったモデルマッピングやセットアップで問題になることはありますか?
エラーが発生しましたか。ルーティングコード –
がパスの問題のようです:〜/ Views/Shared/_Layout.cshtml。パスが正しいかどうかを確認してください。 – Maharshi
ビューにコードを表示します。たぶんあなたが失敗している、または何かがnullなどの何らかのロジックチェックを行っているかもしれません... –