1
观是这样的(我动态添加和删除文件,这里写的GUID视图模型的DocumentIdentifier成员):更新模型
<div>
<input type="hidden" name="DocumentViewModels.Index" value="8796c4e8-2262-46c0-bacc-8ffb6678b62a" />
<input type="text" name="DocumentViewModels[8796c4e8-2262-46c0-bacc-8ffb6678b62a].Document.Name" />
<input type="text" name="DocumentViewModels[8796c4e8-2262-46c0-bacc-8ffb6678b62a].Document.Type" />
<div>
<div>
<input type="hidden" name="DocumentViewModels.Index" value="3f2810c6-e338-4a6a-aa64-54b162303aab" />
<input type="text" name="DocumentViewModels[3f2810c6-e338-4a6a-aa64-54b162303aab].Document.Name" />
<input type="text" name="DocumentViewModels[3f2810c6-e338-4a6a-aa64-54b162303aab].Document.Type" />
<div>
我视图模型是这样的:
public class DocumentViewModel
{
public Document Document {get;set;}
public List<Attachments> {get;set;}
public Guid DocumentIdentifier {get;set;}
}
控制器
public ActionResult PostDocuments(List<DocumentViewModel> documentViewModels)
{
// I successfully save newly added documents in database
// Then I delete documents from database that are not in documentViewModels any more (because I dynamically add and delete them)
// Then I find documents that are on form and in database too and I want to update them
List<Document> matchedDocumentsFromDatabase = SynchronizeDocuments(documentViewModels.Select(x => x.Document));
// Here i'm stuck. I want to write something like this:
UpdateModel(matchedDocumentsFromDatabase, "DocumentViewModels");
context.SaveChanges();
// return something;
}
你能帮助我吗?
View中编写的guid不是文档的id。请参阅更新 – karaxuna
我需要guids来区分新添加的文档(在ID的情况下,它们都将具有id = 0) – karaxuna
无论如何,DocumentIdentifier都与您的视图模型关联。不是吗? –