使用Razor查询Umbraco Checkboxlist项目

时间:2015-05-14 19:28:57

标签: razor umbraco querying

我的页面上有以下内容:

var filteredArticles = newsNode.Descendants().Where("newsType.Split(',').Contains('Employer')");

newsType是我的新闻项目上的一个属性,它是一个Umbraco复选框列表数据类型,umbraco呈现为逗号分隔列表,例如:

<newsType>Agent,Employer,Provider,Home Page</newsType>

我想要找回所有&#34;雇主&#34;文章。但是我收到以下错误:

  

Umbraco.Core.Dynamics.ParseException:没有适用的方法&#39;分裂&#39;   存在于&#39;字符串&#39;

使用razor从复选框列表中查询逗号分隔列表有不同的方法吗?

这适用于Umbraco版本7.2.4。

3 个答案:

答案 0 :(得分:0)

首先是哪个版本的Umbraco - 4,6或7?

其次,您有一个要查询的文章列表。

newsNode.Descendants() 

据推测,您希望过滤新闻文章中的某个属性 - 换句话说,在您的新闻文章中,将包含文本&#34;雇主&#34;这样你就可以过滤了吗?

如果您上传代码以便我们可以查看,可能会更容易。

答案 1 :(得分:0)

我认为这就是你要做的事情:

var articles = newsNode.Descendants();
var filteredArticles = articles.Where(article => article.GetPropertyValue<string>("newsType").Split(',').Contains("Employer"));

未经测试但应该可以使用。

祝你好运

答案 2 :(得分:0)

对我有用的是(Umbraco 7):

GetPropertyValue<IEnumerable<string>>("xxxx").Contains("yyyy")