0

我正在与SyndicationItem班级一起工作并找到了该Categories物业。

根据文档,该属性没有设置器,但是我发现我可以写入该属性,即

var syndicationItem = new SyndicationItem
{
    Categories = { new SyndicationCategory("Category name") }
};

现在,这还不够好,因为我无法像那样列举我的价值观。如果我做这样的事情

var categoryCollection = new Collection<SyndicationCategory>();

var syndicationItem = new SyndicationItem
{
    Categories = categoryCollection
};

Categories属性得到所有弯曲,并告诉我没有二传手。

我错过了什么?

4

1 回答 1

1

文档和编译器是正确的 - 该Categories属性没有设置器。

您发布的第一个示例没有为该Categories属性分配新值。它获取现有值并调用 Add 方法来添加SyndicationCategory您在初始化程序中指定的每个值。

您必须将类别添加到现有集合中:

var syndicationItem = new SyndicationItem();
Collection<SyndicationCategory> categoryCollection = GetCategories();
foreach (var category in categoryCollection)
{
    syndicationItem.Categories.Add(category);
}
于 2015-09-30T22:11:20.380 回答