在我的MVC-4 Web-API服务器中,我收到了一个json字符串,其中包含其名称中的空格:
{ "field name" : "some value" , "simpleName" : "some string" }
我定义了Model
类,例如:
public class SomeJsonModel
{
[DataMember(Name = "field name")]
public string FieldName { get; set; }
public string SimpleName { get; set; }
}
现在SimpleName
通过(尽管有一个不错的第一字母大写不匹配,这很好),但是FieldName
变为null
。
我如何成功接收在该字段的名称中具有空格的JSON(预定义 - 我不能更改客户端数据源)?
尝试在您的类上添加[datacontract]:
[DataContract]
public class SomeJsonModel
{
[DataMember(Name = "field name")]
public string FieldName { get; set; }
[DataMember]
public string SimpleName { get; set; }
}
这是有关此信息的更多信息:
- 在MSDN上:" 与DataContractAttribute结合使用DataMemberAttribute属性,以识别数据合同的类型成员。
- 与DataMember的名称属性相关的JSON.NET问题。该分辨率是" 将数据合同放在类上。"