我尝试了MVC 4中的API控制器,并且在使用put,更新对象时有一个关于最佳实践的问题。Web API,API控制器以及如何更新模型?
我正在使用RavenDB作为数据存储,我创建了一个自定义的MediaTypeFormatter,它有一个类型为JsonDynamicConverter的转换器,可以将json序列化并反序列化为动态对象。随着中说我的API控制器put方法看起来像这样
public void Put(string id, dynamic model) {}
这个动态物体看起来有几分像这样:
pageModel = {
"id": "pages-2",
"metadata": {
"changed": "2012-02-28T17:16:27.323Z"
},
"parent": {
"id": "pages-1",
"slug": null
},
"children": []
}
所以,到目前为止好,但现在我需要更新我的ID网页实体-2。 ApiController中不存在UpdateModel,所以我的问题是做到这一点的最佳/首选方式是什么?
”对其内容进行更改“这正是我的意思,在标准MVC中,我可以使用UpdateModel来更新我拥有的任何对象,但是我有什么选项可以在.net中合并两个对象?也许我对这个问题有错误的方法,但我认为它非常简单,我想保存/更新任何对象,我唯一确定的地方就是它实现了相同的接口或基类,我也是确定我收到的对象以某种方式扩展。 – Marcus 2012-02-29 08:04:53