我的页面上有以下内容:
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。
答案 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")