2

私はコードファーストのアプローチで論争しようとしていますが、ここで理解にギャップがあります。投稿とファイルのコレクションがあります。

public class post {
public post(){attachements = new list<files>();}
[key]
public int id{get;set;}
public string title{get;set}
public string body{get;set;}
public virtual ICollection<Files> attachments {get;set;}
}

public class file{
[key]
public int id{get;set;}
public string filename {get;set;}
}

そして、私はViewModelを次のようにダウンさせていると思います

public class MyView{
public post post {get;set;}
public list<files> files {get;set;}
public MyView(post p, list<file> f){this.post = p; this.files = f;}

List と Display ではすべて正常に動作しますが、新しい投稿とファイルを作成しようとすると、すべてがうまくいきません。ViewModel を使用してみましたが、ビュー モデルのリストに項目を追加する方法がわかりません。

「投稿」に基づいてビューを作成し、ファイルをアップロードしてそれらのリストを隠しフィールドに保持する部分ビューを作成しました。すべてを機能させることができますが、それがエレガントなソリューションであるかどうかはわかりません。

誰かが私がベースから外れているかどうかを教えてもらえますか...会話を開始して、うまくいけば他の初心者に役立ついくつかの応答を収集したいと考えています。

4

1 に答える 1

2

MVCのリストモデルバインディング機能を使用する必要があります。

http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx

これがどのように連携するかについての良いガイドについては、次のようになります。

http://blog.stevensanderson.com/2010/01/28/editing-a-variable-length-list-aspnet-mvc-2-style/

于 2011-01-26T05:23:04.483 に答える