2010-10-04 33 views
5

Ben artık özel modeli bağlayıcı bir çift yazdım, ben sihirli dizeleri üzerinde, örneğin güvenerek tuzağına düştüm fark var:Sihirli dizeleri özel model bağlayıcılardan nasıl çıkarabilirim?

if (bindingContext.ValueProvider.ContainsPrefix("PaymentKey")) 
    { 
     paymentKey = bindingContext.ValueProvider.GetValue("PaymentKey").AttemptedValue; 
    } 

Bir kullanabilmek için istiyorum öneki isimleri güçlü bir şekilde yazmak için ifade, ancak nasıl yardımcı olabileceğini ve bazı yardımlar için minnettar olacağımı ifade edemezsiniz.

Teşekkürler.

+0

Sen özellikleri olarak bu dize değerleri tutmak ve yerine özelliklerini başvurmak için statik bir sınıf oluşturabilir. Örneğin: bindingContext.ValueProvider.ContainsPrefix (SomeClass.PaymentKey) –

cevap

1

Ne arıyorsun bindingContext.ModelName böylece kod haline gelebilir geçerli:

if (bindingContext.ValueProvider.ContainsPrefix(bindingContext.ModelName)) 
    { 
     paymentKey = bindingContext.ValueProvider.GetValue(bindingContext.ModelName).AttemptedValue; 
    } 
+0

Cevabınız için teşekkürler, ama hayır, bu aradığım şey değil. Belki benim sorum daha açık olabilirdi, ama bir bütün olarak model değil, her özellik için sihir dizilerini kullanmaktan kaçınmanın bir yolunu arıyordum. Yine de teşekkürler. –

İlgili konular