编程语言
首页 > 编程语言> > 绑定[Serializable]类的ASP.Net MVC模型

绑定[Serializable]类的ASP.Net MVC模型

作者:互联网

我有这堂课

[Serializable]
public class MyObject {
    // properties omitted
}

以及此WebAPI控制器方法:

[HttpPost]
[ResponseType(typeof(string))]
public IHttpActionResult SetMyObject(MyObject o) {
    // process object
}

但是它无法建模绑定到MyObject类.控制器方法中的对象o完全为空,每个属性均为默认值(因此通常为null).

事实证明,这是由于MyObject上的[Serializable]注释所致.删除后,模型绑定将再次起作用.

有没有办法保持[可序列化]和修复模型绑定?

解决方法:

答案是在解析器上的设置IgnoreSerializableAttribute中

((DefaultContractResolver)config.Formatters.JsonFormatter
  .SerializerSettings.ContractResolver)
    .IgnoreSerializableAttribute = true;

检查:

ASP.NET Web API and [Serializable] class

标签:asp-net-web-api,model-binding,c,asp-net-mvc
来源: https://codeday.me/bug/20191028/1954078.html