1

ViewModel を使用して、MVC4 の基になる EF エンティティを表すカスタム ビューを作成し始めました。MVC プロジェクトに「ViewModels」という名前のフォルダーを作成し、そのフォルダー内にクラスを配置しました。私がやりたいことは、厳密に型指定された ViewModel クラスに基づいて新しいビューを作成することです。ただし、 「厳密に型指定されたビューを作成する」オプションを使用して ASP.NET MVC でビューを作成し、その後の「モデル クラス」ドロップダウンを選択するときに表示されるウィザードには、ViewModel クラスが含まれていません。リストされている唯一のクラスは、私の Entity Framework モデルのクラスです。

作成した ViewModel クラスに基づいて View を作成するにはどうすればよいですか?それとも Model クラスのリストに表示するにはどうすればよいですか?

ありがとう!

4

2 に答える 2

2

新しい ViewModel クラスがそのドロップダウンに表示される前に、MVC プロジェクトをコンパイルする必要があります。

于 2012-08-01T20:11:05.627 に答える
0

デフォルトでは、ウィザードはモデル ドロップダウンにClass fileあるコントローラー ファイル (末尾が ) を除くすべての名前を 表示します。Controller.cs

新しい通常のビューを作成し、これをビュー ファイルの最初の行として追加するだけです。

@model YourViewModelClassName

YourViewModelClassNameは、ViewModel 用に作成したクラスの名前であると仮定します。

例:このような顧客ビューモデルがある場合

public class CustomerViewModel
{
  public string Name {set;get;}
}

したがって、ビューは次のようになります

@model CustomerViewModel
<p>Your view content can go here</p>

クラス ViewModel クラスが名前空間にある場合は、完全修飾クラス名を指定する必要があります

@model MyNameSpaceName.CustomerViewModel

MyNameSpaceNameは、このクラスが存在する名前空間の名前であると仮定します

于 2012-08-01T19:55:45.083 に答える