2010-06-04 2 views
11

В umbraco можно проверить, существует ли определенное свойство для определенного узла?

Например, у меня есть 5 узлов, и у меня есть свойство выбора медиа для первого узла. Мне нужно проверить все узлы, доступно ли свойство выбора мультимедиа для узлов или нет?проверить наличие собственности

+1

Вы делаете это в файле xslt или в элементе управления пользователя? – Soldarnal

ответ

11

Я думаю, вы можете просто проверить существование свойства путем сравнения с нулем:

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

Если вы используете бритву вы можете сделать это следующим образом:

Model.HasProperty("MyPropertyAlias") 

И если свойство можно проверить содержит значение следующим образом:

Model.HasValue("MyPropertyAlias") 
0

вы можете сделать, как этот

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

Вы должны сначала проверить, существует ли свойство, прежде чем проверять значение, или я думаю, что вы получите исключение с нулевой ссылкой, если по какой-то причине оно не существует. – ProNotion

Смежные вопросы