2011-07-14 22 views
11

WCF'de yeni yaşıyorum ve veri üyesine kısıtlama eklemeye çalışıyorum. Bu yöntemde exmple içinYöntem/veri üyesinde WCF'ye kısıtlamalar ekleyin

:

max ve minimum uzunluğunu ayarlamak için isteyen
[DataMember] 
    public string StringValue 
    { 
     get { return stringValue; } 
     set { stringValue = value; } 
    } 

. Ben XML kodu

<xs:restriction base="xs:string"> 
    <xs:minLength value="2"/> 
    <xs:maxLength value="10"/> 
</xs:restriction> 

için kısıtlama eklemek ama kodundan düz bir kısıtlama eklemek için bir yol yoktur bilen?

+0

Sen kontrolün bu düzeyde isterseniz yerine XMLSerializer kullanmak gerekebilir. – forsvarir

cevap

7

MSDN'a göre, maxLength, minLength ve length vb. İstediğim kadar istediğin şeyi uygulamak için hiçbir bildirim yolu yoktur. Bu, .NET ve XML dünyaları arasındaki çatlakların gösterildiği yerlerden biridir. Uygulama için bulduğum tek yöntem, bir message inspector oluşturmak ve buradaki dönüştürmeyi uygulamaktır. Sorunun

+2

Ayrıca, mesaj denetçisine dayalı [Nasıl Yapılır: WCF'de Şema Doğrulaması ile İleti Doğrulaması Gerçekleştirin] (http://msdn.microsoft.com/en-us/library/ff647820.aspx) – Kirill

+0

harika bir bağlantı, daha fazla bir şey arıyordum –