Dear all,
I have custom service which return list of data. But while its returning the data the list class also returning all parameter methods which is associated with service/List class. Please how can I fix this issue the list parameters that I don't required in json format. And I can't remove the parameter from class while its using for other service methods in same service class.
[DataContractAttribute]
class salesProj
{
YearBase years;
Name salesMan;
ProjId projId;
InvoiceDate invoiceDate;
AmountMST invoiceAmountmst;
}
[ DataMemberAttribute('Year')]
public YearBase parmInvoiceYear(YearBase _invoiceyear = years)
{
years = _invoiceyear;
return years;
}
[ DataMemberAttribute('InvoiceAmount')]
public AmountMST parmInvoiceAmount(AmountMST _invoiceAmount = invoiceAmountmst)
{
invoiceAmountmst = _invoiceAmount;
return invoiceAmountmst;
}
[ DataMemberAttribute('ProjId')]
public ProjId parmProjId(ProjId _projectId = projId)
{
projId = _projectId;
return projId;
}
[ DataMemberAttribute('Salesman')]
public Name parmSalesman(Name _salesMan = salesMan)
{
salesMan = _salesMan;
return salesMan;
}
[SysEntryPointAttribute(true),AifCollectionTypeAttribute("return" , Types::Class, classStr(salesProj))]
public List getprojTotalCurrentYearAmount()
{
salesProj salesClassObj;
List saleslist = new List(Types::Class);
salesClassObj = new salesProj();
salesClassObj.parmInvoiceYear(2021);
salesClassObj.parmInvoiceAmount(this.currentYearProjSales());
saleslist.addEnd(salesClassObj);
return saleslist;
}
C# Web api
[HttpGet]
[Route("api/getProjSales")]
public HttpResponseMessage GetProjSales()
{
CallContext callContext = new CallContext();
callContext.Company = "ENPR";
callContext.Language = "en-us";
testcustomerClient client = new testcustomerClient();
custClass[] salesProj = client.getProjSales(callContext);
List saleslist = new List();
foreach (var item in salesProj)
{
saleslist.Add(item);
}
return Request.CreateResponse(HttpStatusCode.OK, saleslist);
}
//Json formart
[{"InvoiceAmount":25072.43,"InvoiceDate":"1900-01-01T12:00:00","ProjId":"","Salesman":"","Year":2021}]
How can I remove "InvoiceDate":"1900-01-01T12:00:00","ProjId":"","Salesman":"", above format while list class from AX its returning all parameters.