检查财产存在

问题描述:

在umbraco中,是否可以检查特定节点是否存在特定属性?

例如,我有5个节点,而且我有第一个节点的媒体选择器属性。我需要检查所有节点媒体选择器属性是否可用于节点?检查财产存在

+1

你在xslt文件或用户控件中执行此操作吗? – Soldarnal 2010-06-07 15:40:50

我想你可以通过比较空检查属性是否存在:

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

如果您使用的剃须刀,你可以做这样的:

Model.HasProperty("MyPropertyAlias") 

而且你可以检查属性包含值如下:

Model.HasValue("MyPropertyAlias") 

你可以这样做

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

在检查值之前,您应该首先检查该属性是否存在,或者如果由于某种原因它不存在,我认为您将收到空引用异常。 – ProNotion 2016-04-28 05:14:02