首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Umbraco6中,使用ContentService保存和发布节点列表的最佳方式是什么?

在Umbraco6中,使用ContentService保存和发布节点列表的最佳方式是什么?
EN

Stack Overflow用户
提问于 2013-07-16 00:11:12
回答 1查看 1.6K关注 0票数 3

我正在编写一个简单的函数,用于从XML数据源(大约400个节点)更新/创建节点,我想知道保存和发布所有节点的最佳方式是什么。我注意到你可以Save一个节点列表,但是没有SaveAndPublish的等价物。

我应该只迭代列表并为每个节点调用SaveAndPublish,还是有更好的方法?如果有其他选择,在性能方面有什么不同吗?

如有任何答案,我们将不胜感激!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-16 11:17:09

您是对的,没有像Save方法那样接受IEnumerable的PublishSaveAndPublish选项。它可能会很方便,因为它可以节省一些代码行。

目前实现您想要的最有效的选项是执行以下操作。

代码语言:javascript
复制
var cs = ApplicationContext.Current.Services.ContentService;
foreach(var content in yourListOfContentItems)
{
    cs.SaveAndPublish(content);
}

在发布之前通过调用Save方法保存列表并不会真正对您产生任何影响,因为Umbraco检测到列表中有新内容,它会分别处理每个内容。据我所知,这样做之后调用Publish也不会节省任何周期,因为Publish方法调用的SaveAndPublishDo方法与SaveAndPublish调用的方法相同。因此,不妨直奔最终结果而去。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17658806

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档