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;}

列表和显示一切正常……但是当我尝试创建新帖子和文件时,一切都崩溃了。我试过使用 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 回答