Я использую сервис скриптов .net, который вызывается из клиентского скрипта, и он работает очень хорошо.
Единственная проблема - он генерирует атрибут '__type' для каждого из возвращаемых объектов, который мне не нужен или не нужен.
Я видел несколько сообщений об этом в Интернете, и, насколько я могу судить, для этого есть только «обходные пути»:
некоторые люди предлагали скрыть c'or без параметров типа возврата как «внутренняя защита»,
другие предложили не использовать тег [ScriptMethod], а вместо этого JSONfy результат вручную и вернуть строку.
Мне интересно, есть ли другое, лучшее решение для этого. и, кстати, для чего вообще используется этот атрибут?
Я прилагаю метод обслуживания и сгенерированный JSON.
метод:
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json, UseHttpGet = true)]
public IEnumerable<EmployeePO> GetEmployeesForDepartment(int DepartmentId)
{
return new AdministrationController().GetEmployeesForDepartment(DepartmentId);
}
JSON вернуло:
{"d":[{"__type":"Application.Controllers.PresentationObjects.EmployeePO","Positions":[{"__type":"Application.Controllers.PresentationObjects.PositionPO","Id":4,"Name":"Employee: 1test Position 1","IsPriority":false,"WarningThreshold":50,"CriticalThreshold":60,"CurrentWaitingTime":-1,"Passengers":[],"Qualifications":[...