1

MVC パターンを使用してビューにデータを適切に渡す方法について簡単な質問があります。

EditProfile/Register モデル (名前、電子メール、国) があります。ビューには国のドロップダウン リストがあり、国のリストを渡す必要があります。

EditProfile/Register モデルと List を基本的にカプセル化する新しいモデル (ビューのみ) を作成するのは正しいですか? このビュー固有のモデルをコントローラーで作成しますか? (私のデータ アクセス プロジェクトとは対照的に)。

ありがとう!

4

2 に答える 2

2

ビュー モデル (ASP.Net MVC ビューの場合) は、名前を除いてドメイン モデル (データ層のモデル) とは関係ありません。このMVC: データ モデルとビュー モデルの質問では、相違点と類似点について詳しく説明しています。

ASP.Net MVC プロジェクト (データ層ではない) のどこかにビュー モデルを作成し、通常は Controllers フォルダーの兄弟である "Models" または "ViewModels" フォルダーに配置します。ビューによっては、一部のビュー モデル クラスを共有できますが、単一のビューで使用されるものもあります。

于 2012-10-02T21:33:27.227 に答える
0

このタスクを達成するには 2 つの方法があります

(i) 推奨

ビューモデルを作成する selectlist 型のプロパティを追加する

<code>

    public SelectList countrylist
        {
            get;
            set;
        }
</code>

ビューモデルクラスのコンストラクター関数で、国テーブルから国のリストを割り当てます。

<code>

     countrylist= new SelectList(db.countries.ToList(), "CountryID", "CountryName");

</code>

追加したビューで

<code>
     Html.DropDownList("CountyID", Model.countrylist,"Select")
</code>

(ii)このモデルを非常に少ないビューで使用する必要がある場合にのみ使用してください(あなたの場合のように)

ビューモデルを作成せず、代わりにjqueryを使用し、ビューページの準備が整ったドキュメントに国リストのhtml選択を追加します。

于 2012-10-03T14:03:27.783 に答える