böyle, [DataContract]
ve [DataMember]
özelliklerini kullanarak bir sözleşme tanımlayabilirsiniz:[DataMember (EmitDefaultValue = false)] neden kullanılmıyor? WCF içinde
Ancak, ben kullanmak ister:
[DataContract]
public class Sample
{
[DataMember(EmitDefaultValue = false, IsRequired = false)]
public string Test { get; set; }
}
This article on the MSDNEmitDefaultValue = false
kullanılarak tavsiye edilmez olduğunu belirtmektedir Bu, bu yapı kullanılarak oluşturulan XML daha temiz olduğu için.
<Sample>
</Sample>
Ben raporumu arkasındaki mantık nedir merak ediyorum: hiçbir değer olduğunda ommited edilir ayar elemanı kullanırken
<Sample>
<Test xsi:nil="true"/>
</Sample>
: Bu ayar sonuçları belirten Değil. Özellikle, her iki snippti de bana benzediğinden (ve son bölüm de bu sözleşme için doğru şekilde serpiştirilebilir).
Bu ifadenin arkasındaki mantık nedir?
Bunun önemli bir kısmı, karşılıklı sorun olarak görünüyor. Aramanın her iki tarafında da .net teknolojisini kullanırsanız ve güçlü bir şekilde yazdığınız veri sözleşmelerinde sorun yaşamazsınız. – Gent