【发布时间】:2019-02-01 10:58:31
【问题描述】:
我用我的控制器使用restsharp(一个web api,.NET web应用程序项目)调用这个https://jsonplaceholder.typicode.com/albums。 这是我的课,我使用 Datacontracts 和 DataMemebers。
[DataContract]
public class Album
{
[DataMember(Name = "userId")]
public int UserId { get; set; }
[DataMember(Name = "id")]
public int Id { get; set; }
[DataMember(Name = "title")]
public string Title { get; set; }
}
使用邮递员的结果是:
{
"userId": 1,
"id": 1,
"title": "quidem molestiae enim"
}
我设置了正确的参考,它工作正常。
但是当我用其他名称更改字段名称时,例如
[DataContract]
public class Album
{
[DataMember(Name = "userId")]
public int myproject { get; set; }
[DataMember(Name = "id")]
public int code { get; set; }
[DataMember(Name = "title")]
public string name { get; set; }
}
并使用邮递员,结果是
{
"userId": 0,
"id": 0,
"title": null
}
为什么会这样?使用此属性必须识别所有字段的名称
【问题讨论】:
标签: .net json asp.net-web-api datacontractserializer