2010-05-05 22 views
10

Bu, Özel ValidatorAttributes ile RIAServices kullanıyorsanız, bir sorudan daha fazla uyarı uyarısıdır.Özel VerilerAnti Hizmetleri ile Ek Açıklamalar

Burada Senario, bir özelliği diğer olası bir dizi kümesinin belirlenip belirlenmediğine bağlı olarak bir özelliği doğrulayacak özel bir DataAnnotation oluşturuyordum; Prop1 100 ise Prop2, Prop3 veya Prop4 olamazdı, bunlardan biri ayarlanmıştı. RIA Hizmetleri'ni de kullanıyorum, bu yüzden ValidatorAttribute .shared.cs dosyasını oluşturdum. Yardımcı CannotBeZeroIf sınıfı için tüm testleri yazdıktan sonra, niteliklerini Model Sınıfına eklemeye başladım. Elbette bu şey çok yanlış gitmeye başladığında. RIA Hizmetleri, bir NullReferenceException ile CodeGen sırasında kusmaya başladı.

CreateRiaClientFilesTask -> NullReferenceException

Ben sınıfa değerleri geçmesine Validator yapıcısını kullanarak gerçeği ile bağlantılı olduğu ortaya çıkıyor. ObjectInitialization sözdizimini kullanmaya başladığınızda, her şey düzeltildi.

Yanıt, RIA Hizmetleri ve Özel DataAnnotation Validators ile çalışırken ObjectInitializer sözdizimini kullanıyor görünüyor.

+0

, böyle yapmak bir soru sor. Bu yazı ile ilgili sorun, cevapsız soruların listesinin başında süresiz olarak kalacak. Belki de kendi 'sorunuzu' (cevabı zaten bildiğiniz için) yanıtlayabilir ve cevap olarak işaretleyebilirsiniz. Bu, yayınınızın yöneticiler tarafından sonunda kapatılmasını engeller. –

cevap

0

Cevap RIA Hizmetleri ve Özel DataAnnotation Doğrulayıcıları'nın ile uğraşırken ObjectInitializer sözdizimini kullanın gibi görünüyor (yani düşündüğümden daha kolay oldu! ;-)

Bu OP'nin niyet minnettar olsam da
İlgili konular