使用ContentDeploymentJob.AddQuickDeployObject的时候, 请注意第三个参数一定要使用Server Relative URL

MSDN描述这个方法的时候, 并没有写上这个十分值得注意的地方. 笔者在解决一个朋友的问题的时候, 发现了这个问题.

笔者已经在MSDN的ContentDeploymentJob.AddQuickDeployObject Method 文章下面添加了一条注释, 提醒大家使用这个content deployment API的时候注意一下.

 

这里用中文对原因做出解释, 方便国内的朋友们.

正如大侠Stefan介绍的, 一个页面在被指定需要quick deploy之后, SharePoint的一个隐藏列表(名为’Quick Deploy Items’)中会添加一条关于这个item的记录. 如下:

image

列表如下:

image

每次Quick Deployment Job运行结束之后, 该列表中的items都会被清空.

 

如果我们使用方法ContentDeploymentJob.AddQuickDeployObject 来指定某个非publishing页面(因为publishing页面不需要我们编程来标记为需要quick deploy), 比如说图片, 文档之类的item需要被quick deploy的话, 正常情况下, 我们标记的item在quick deploy之后也应该被清除掉的. 但是, 如果你在第三个参数, 即itemUrl中赋予的是一个full URL,虽然deploy会成功, item在目标站点集里会出现, 但是在quick deploy items列表中的列表项却永远不会被自动删掉了.

 

原因是SharePoint在执行quick deploy job后的清理工作的时候, 当我们制定的itemUrl参数的值跟这个item的relative URL匹配的时候, 才会执行删除动作.

 

这个问题比较难发现, 所以记在这里, 供大家参考.

 

参考资料

=================

ContentDeploymentJob.AddQuickDeployObject Method

http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.publishing.administration.contentdeploymentjob.addquickdeployobject.aspx

Content Deployment – The complete Guide – Part 5 – Quick Deployment

http://blogs.technet.com/b/stefan_gossner/archive/2009/11/04/content-deployment-the-complete-guide-part-5-quick-deployment.aspx

posted on   中道学友  阅读(500)  评论(0编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律

导航

< 2011年8月 >
31 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31 1 2 3
4 5 6 7 8 9 10

技术追求准确,态度积极向上

点击右上角即可分享
微信分享提示