Отключить подсказку типов в службах WCF JSON

У меня должен быть относительно простой вопрос, на который я не могу найти ответа.

Когда 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 год, и я надеюсь, что кто-то это понял).

14
задан Justin Niessner 16 September 2010 в 19:56
поделиться