2010-06-04 19 views
11

W umbraco, czy jest możliwe sprawdzenie, czy istnieje pewna właściwość dla danego węzła?

Na przykład mam 5 węzłów i mam właściwości selektora multimediów dla pierwszego węzła samodzielnie. Muszę sprawdzić wszystkie węzły, czy właściwość selektora mediów jest dostępna dla węzłów, czy nie?sprawdź istnienie nieruchomości

+1

Czy robisz to w pliku xslt lub w formancie użytkownika? – Soldarnal

Odpowiedz

11

myślę, że można po prostu sprawdzić istnienie własności poprzez porównanie null:

Node somenode = new Node(myNodeID); 
if (somenode.GetProperty("myProperty") != null) 
{ 
    string myProperty = somenode.GetProperty("myProperty").Value.ToString(); 
    //Do something with myProperty 
} 
9

Jeśli używasz maszynki może to zrobić tak:

Model.HasProperty("MyPropertyAlias") 

, co pozwala sprawdzić, czy nieruchomość zawiera wartość w następujący sposób:

Model.HasValue("MyPropertyAlias") 
0

można zrobić, jak to

if (Model.Content.HasValue("alias")) 
{ 
//placeyour code here 
} 
+0

Powinieneś najpierw sprawdzić, czy właściwość istnieje przed sprawdzeniem wartości lub myślę, że otrzymasz wyjątek odwołania zerowego, jeśli z jakiegoś powodu nie istnieje. – ProNotion