我有这个类
[Serializable]
public class MyObject {
// properties omitted
}
这个 WebAPI Controller 方法:
[HttpPost]
[ResponseType(typeof(string))]
public IHttpActionResult SetMyObject(MyObject o) {
// process object
}
但它无法将模型绑定(bind)到 MyObject 类。 Controller 方法中的对象 o 是完全空的,每个属性都是默认的(因此大部分为空)。
原来这是因为 MyObject 上的 [Serializable] 注释。删除使模型绑定(bind)再次工作。
有没有办法保持 [Serializable] 并修复模型绑定(bind)?
最佳答案
答案在 Resolver 上的设置 IgnoreSerializableAttribute
中
((DefaultContractResolver)config.Formatters.JsonFormatter
.SerializerSettings.ContractResolver)
.IgnoreSerializableAttribute = true;
检查:
ASP.NET Web API and [Serializable] class
关于c# - ASP.Net MVC 模型绑定(bind)一个 [Serializable] 类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28557063/