У меня есть относительно простой вопрос, на который я не могу найти ответ.
Когда WCF выполняет сериализацию объектов, он автоматически применяет тип подсказки. Для сервисов Json это приводит к появлению дополнительного поля для каждого сложного объекта с именем __type
. Объект, определенный как:
[DataContract]
public class SomeObject
{
[DataMember]
public string First { get; set; }
[DataMember]
public string Last { get; set; }
}
Сериализовал бы что-то вроде:
{
"First" : "Hello",
"Last" : "World!",
"__type" : "SomeObject#MyNamespace.SomeObject"
}
Обычно это не проблема. К сожалению, когда вы начинаете вложение классов в довольно большие и сложные структуры, это приводит к огромным накладным расходам на размер ответа JSON, возвращаемого клиенту.
Конечно, должен быть способ отключить это поведение, но я не смог его найти (ни один не имел Рика Штраля в 2007 году ... но это 2010 год, и я надеюсь, что кто-то понял это вышло).