如何解决将价值传递给ASP.NET MVC中的每个模型
您能告诉我一下其中2个的区别吗?因为当我想将值传递给某些模型的模型时遇到问题,但无法生成ID。
[HttpPost]
public HttpResponseMessage CreateShortcut([FromBody]ShortcutModel shortcut)
{
var service = new DocumentService();
FolderModel folders = new FolderModel
{
Title = shortcut.Title,ParentID = shortcut.ParentID,HeaderTitle = shortcut.HeaderTitle,HeaderReferenceNo = shortcut.HeaderReferenceNo,ItemType = shortcut.type,idreference = shortcut.idreference,ReferenceNo = shortcut.ReferenceNo
};
FolderModel newFolder = service.AddFolder(folders);
return Request.CreateResponse(HttpStatusCode.OK,newFolder);
}
但是当我使用它时,它可以工作并且想要生成ID:
public HttpResponseMessage Post(FolderModel folder)
{
var service = new DocumentService();
FolderModel newFolder = service.AddFolder(folder);
return Request.CreateResponse(HttpStatusCode.OK,newFolder);
}
解决方法
您可以发布Models和service.AddFolder()的代码。
class FolderModel{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int ID { get; set; }
...
}
通常,它会在插入数据库后自动generate ID。
测试屏幕截图
控制器代码
[Route("/addfolder")]
[HttpPost]
public HttpResponseMessage CreateShortcut([FromBody] ShortcutModel shortcut)
{
//var service = new DocumentService();
FolderModel folders = new FolderModel
{
Title = shortcut.Title,ParentID = shortcut.ParentID,HeaderTitle = shortcut.HeaderTitle,HeaderReferenceNo = shortcut.HeaderReferenceNo,ItemType = shortcut.type,idreference = shortcut.idreference,ReferenceNo = shortcut.ReferenceNo
};
service.Folders.Add(folders);
service.SaveChanges();
int ID = folders.ID;
//return Request.CreateResponse(HttpStatusCode.OK,newFolder);
return new HttpResponseMessage(HttpStatusCode.OK);
}
邮寄机构
{
"Title":"1","ParentID":"2","HeaderTitle":"3","HeaderReferenceNo":"4","type":"5","idreference":"6","ReferenceNo":"7"
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。