I’m using the WCF Project on Codeplex (also known as WebAPI via Nuget). My simple service produces XML beautifully, but returns JSON where every property is named “item”.
[OperationContract]
[WebGet(UriTemplate = "all")]
public IQueryable<myobject> GetAllUsers() {
return (from myobject u in MyDatabase.MyObjects
select u).AsQueryable();
}
Here’s the generated JSON.
[
{
"item":null,
"item":641412011,
"item":null,
"item":"en_US",
"item":"-7",
"item":true
}
]
The return value is a public class POCO.
[Serializable]
public class MyObject {
[DataMember(Name = "id")]
public int ID { get; set; }
[DataMember(Name = "name")]
public string Name { get; set; }
[DataMember(Name = "first_name")]
public string FirstName { get; set; }
[DataMember(Name = "last_name")]
public string LastName { get; set; }
}
Has anyone seen this?
Sorry. Some digging tipped me off that I was missing the
[DataContract]attribute on my POCO class.