2016-04-01 24 views
0

umbraco sayfalarının bir listesini topluluğum var ve bir bool özelliği true olup olmadığını kontrol ederek döngü yapmak istiyorum ve eğer varsa belirli bir sınıfı uygulamak istiyorum traş makinesinde bulunan üçüncül operatörün bir dersi bir dizeye uygulayabilmesi durumunda başka nasıl yazabilirim. i ve üçlü kullanarak wasnt, o zaman aşağıdaki gibi benzer bir şey (ama sağ)Üçlü operatörü jilet görünümünde kullanırken birden çok koşulu test etme (eğer varsa)

<div class="@(package.GetPropertyValue<bool>("test") ? "test" : package.GetPropertyValue<bool>("test1") ? "test1" : "test2")"></div> 

Bu yapılabilir ya da birinin nasıl önerebilirsiniz ediyorum benim ustura görünümünde bu

if package.GetPropertyValue<bool>("test") 
{ 
    <div class="test1"></div> 
} 
else if (package.GetPropertyValue<bool>("test1")) 
{ 
    <div class="test1"></div> 
} 
else if (package.GetPropertyValue<bool>("test2")) 
{ 
    <div class="test2"></div> 
} 

gibi görünecektir Belirli bir koşul karşılandığında belirli bir sınıfı bu div'a uygulayabilir miyim?

çok teşekkürler paul

cevap

1

Evet, yapabilirsiniz yuva üçlü operatörler, ama dikkatli çok fındık gidiyor, yoksa okumak kod oldukça zor hale getirebilir. Aşağıdaki gibi bir şey yapabilirsiniz: Bu, tasarımın kötü bir yanı gibi görünüyor. Ya sonra başka bir sınıf istiyorlarsa? Üçlü operatöre başka bir yuvalama düzeyi eklemiş olursunuz ve bir dahaki sefere bir dahaki sefere vb. Eğer bu özellik sadece stilin ayarlanması içinse, neden tek bir özelliği olmayan bir özelliği var ki, bu da onları stilin seçmesine izin veriyor. iç içe geçmiş üçlü operatörlere olan ihtiyaç.

+0

Merhaba Tim, cevap için teşekkürler Ben bir vereceğim. Sadece üçe bölünmüş üsler olacak, böylece daha fazla ekleme konusunda endişelenmem. Öneriniz için teşekkürler, ancak aklımda duracağım. – Paul