2010-02-11 36 views
0

有没有解决以下我在SharePoint/CAML中缺少的解决方案。请注意,我将给出在重定向页面上使用URL的具体示例(发布功能内容类型),但问题的范围比调配重定向页面的范围更广。这是一个真正的问题,可以设置“网址”字段/属性(网页部分,网页等)。SharePoint - 通过CAML配置url属性?

与大多数SharePoint开发人员一样,我有一组环境:“DEV”,“QA”,“STAGING”和“PROD”。我有几个“区域设置”具体在每个环境的网站:

www.mysite.com us.mysite.com uk.mysite.com 等等

网站在每个环境,比其他PROD,具有与之相关的环境前缀,例如:

us.dev.mysite.com us.qa.mysite.com us.staging.mysite.com

可能是一个很常见的设置。 ..

我需要将用户重定向到仅存在于每个特定于语言环境的站点的“www”站点上的页面。我需要重定向来将用户重定向到适合他们当前所在环境的相应“www”站点。例如,如果我在英国语言环境中开发,并且访问重定向页面,我应该重定向到www开发站点。

我曾希望使用SharePoint的“重定向页面”来完成此操作。我将设置一个功能(包含模块元素)以配置“重定向页面”内容类型的实例。这使我可以指定一个url来重定向用户。但是,如果我通过CAML调配页面,则需要一种方法来确保重定向适用于指定的环境。我不能相信我自己或其他开发者记得在每次构建和部署wsp到每个环境时更改URL。

SharePoint/CAML中有没有办法在指定字段/属性值时根据某些开关做某种令牌替换?

回答

0

我不知道我理解你的要求完全,但对环境(开发,QA,分期,督促)的变化,我会用克里斯·奥布莱恩的“配置存储”功能: http://www.sharepointnutsandbolts.com/2008/05/introducing-sharepoint-config-store-for.html 这将创建一个简单的列表,您可以存储特定于当前环境的信息。

这与加里·拉普安特的STSADM的一些推广相结合: http://stsadm.blogspot.com/2007/08/stsadm-commands_09.html

您可以使用此每环境的正确值推送到你的“配置存储”,并在你的代码,查询“配置存储列表”为环境价值。

对于代表不同国家/地区的网站,您可以在该网站/网站集/网络的区域设置属性上进行更改。这增加了另一个维度来检查你的代码。

在你的情况,你可能在所谓的“MyPrefixUrl”配置存储条目,并调用它的价值+相对路径来将用户重定向到正确的位置。

希望这不会混淆你。