WCF/ WCF ria services return proper data when we call it in a silverlight application using invoke an operation, but when we use this service in angular or call it from postman returns relational data outside the RootResults with separate "IncludedResults".
Service/API method -
public IQueryable<viewauthor> getauthors(int author_id)
{
IQueryable<viewauthor> lstAuthor = null;
lstAuthor = this.ObjectContext.books.Include("books").Where(p => p.author_id == author_id).AsQueryable();
IEnumerable<viewauthor> lstResult = lstAuthor.ToList().Trim();
return lstResult.AsQueryable();
}
Entity framework metadata "author.metada.cs" -
[MetadataTypeAttribute(typeof(ViewAuthor.ViewAuthorMetadata))]
public partial class ViewAuthor
{
public string AUTOR_ID { get; set; }
....
....
[Include]
public EntityCollection<books> Books { get; set; }
....
....
}
Actual JSON Response from "getauthors" API -
{
"SelectDocDetailsByMattterIDResult": {
"TotalCount": 1,
"IncludedResults": [
{
"__type": "books:#library.Web.Data",
"book_id": 1,
"title": "Test book 1"
},
{
"__type": "books:#library.Web.Data",
"book_id": 2,
"title": "Test book 2"
},
],
"RootResults": [
{
"author_id": 1,
"ADD_TIME": "\/Date(1559300437353+0530)\/",
"name": "test author"
}
]
}
}
Expected JSON -
{
"SelectDocDetailsByMattterIDResult": {
"TotalCount": 1,
"RootResults": [
{
"author_id": 1,
"ADD_TIME": "\/Date(1559300437353+0530)\/",
"name": "test author",
"books": [
{
"__type": "books:#library.Web.Data",
"book_id": 1,
"title": "Test book 1"
},
{
"__type": "books:#library.Web.Data",
"book_id": 2,
"title": "Test book 2"
},
]
}
]
}
}
I need the same JSON response as SilverLight application, What I did wrong? Please help.
How did you define the service interface, and which binding the server uses? Please refer to my definition.
Result.

Besides, the default serializer is XMLSerializer, we could use DataContractSeriailizer to simplify the serialization, please refer to below link.
https://learn.microsoft.com/en-us/dotnet/framework/wcf/feature-details/using-data-contracts
https://learn.microsoft.com/en-us/dotnet/framework/wcf/feature-details/data-contract-known-types
Feel free to let me know if there is anything I can help with.