2010-02-11 68 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」配置存儲條目,並調用它的價值+相對路徑來將用戶重定向到正確的位置。

希望這不會混淆你。