Asp.net web api 应用程序的自定义属性名称绑定/x-www-form-urlencoded
对于Asp.net web api 应用程序的自定义属性名称绑定/x-www-form-urlencoded,asp.net-web-api,Asp.net Web Api,对于application/json或application/xml我可以使用DataContract进行自定义属性名称绑定: [HttpPost] public string Method([FromBody]Model request) { } [DataContract] public class Model { [DataMember(Name="custom_name")] public string CustomName { get; set; } } 如何为应用
application/json
或application/xml
我可以使用DataContract
进行自定义属性名称绑定:
[HttpPost]
public string Method([FromBody]Model request)
{
}
[DataContract]
public class Model
{
[DataMember(Name="custom_name")]
public string CustomName { get; set; }
}
如何为
应用程序/x-www-form-urlencoded
使用DataContract
或其他工具?可以使用表单urlencoded的内置FormUrlEncodedMediaTypeFormatter实现。它应该适用于任何POCO类(您的数据契约也应该适用,但它会忽略数据契约属性)
确保在web api中配置了媒体类型格式化程序。以下是MSDN关于设置DataContractFormat的帖子:
该类包含。您可以尝试上面的帖子来设置DataContractSerializer。这是一篇旧帖子,但这可能会帮助其他人。以下是执行此类代码的解决方案:
[ModelBinder(typeof(AliasBinder))]
public class MyModel
{
[Alias("state")]
public string Status { get; set; }
}
希望这有帮助:)FormUrlEncodedMediaTypeFormatter和JQueryMvcFormUrlEncodedFormatter不适用于数据合同请不要添加多个问题。回答最好的一个,并将其余的标记为重复项。请参阅可能的副本