DataContract & amp; Атрибуты DataMember - как они влияют на тип

StackOverflow https://stackoverflow.com/questions/1810775

  •  05-07-2019
  •  | 
  •  

Вопрос

В чем разница между классами без атрибутов DataContract?

public class BankOperationResult
{        
    public int CurrentAmount { get; set; }
    public bool Success { get; set; }
}

и тот же класс с атрибутами DataContract:

[DataContract]
public class BankOperationResult
{        
    [DataMember]
    public int CurrentAmount { get; set; }
    [DataMember]
    public bool Success { get; set; }
}

Я имею в виду, обрабатывает ли WCF эти два типа по-разному при кодировании и т. д.?

С этими атрибутами или без них моя служба WCF работает ...

Спасибо, Павел

Это было полезно?

Решение

До .NET 3.5 SP1, если вы не пометили свое свойство атрибутом DataMember, оно не было представлено в WSDL и не сериализовано. Начиная с .NET 3.5 SP1 DataContractSerializer будет автоматически включать все открытые свойства, поэтому вам больше не нужно украшать их этим атрибутом.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top