使用Umbraco内容服务根据文档类型删除内容

时间:2014-04-28 12:39:12

标签: c# .net umbraco umbraco7

我编写了一个Web服务调用,它每60秒根据Web服务的响应动态创建页面。我使用的服务是一个简单的天气预报服务,提供7天的特定地区天气预报。使用以下内容创建所有新内容节点:

var weather = cs.CreateContent("Weather Forecast " + forecast.Date, rootID, "weather");  // Where rootID is the homepage of the site

由于我最终要调整此Web服务调用仅显示一组结果(最新的一组),我希望尝试根据文档类型删除内容。这可能吗?从我在此处看到的内容:http://our.umbraco.org/documentation/reference/Management-v6/Services/ContentService不是,但必须有一个解决方法,以便我可以批量删除从Web服务调用创建的旧内容,并将其替换为最新内容。

我认为做这样的事情是可能的:

cs.GetChildren(rootID).Where(x => x.DocumentTypeAlias == "weather" );

但根据我的Visual Studio,这似乎无效。

非常感谢任何帮助。

/杰森

1 个答案:

答案 0 :(得分:2)

使用以下语法完全可以:

var weatherPages = cs.GetChildren(rootID).Where(x => x.ContentType.Alias == "weather");

然后可以使用以下语法删除每个匹配的页面:

foreach (var item in weatherPages){
  cs.Delete(item);
}