2011-07-28 26 views
0

我正在開發一個Windows應用程序,它允許SharePoint管理員將內容類型從一臺服務器複製到另一臺服務器(跨兩個SharePoint環境)。我處於一個我想要複製的內容類型信息的位置。但是,我無法連接到目標服務器。當我嘗試使用目標站點URL創建SPSite對象時,出現「FileNotFound」異常;我的代碼庫位於源服務器上。跨SharePoint服務器複製內容類型

我的問題:SharePoint對象模型是否支持連接到遠程服務器?如果不是,我可以使用SharePoint Web服務在遠程服務器中創建內容類型對象嗎?如果沒有,是否有任何其他替代API(除了創建我自己的Web服務)來實現這個目標?

謝謝您提前幫忙!

回答

0

要回答你的第一個問題,不,服務器對象模型只能用於本地環境。

Webs Web服務(http://msdn.microsoft.com/en-us/library/webs.webs_methods(v=office.12).aspx)具有創建/刪除/更新內容類型的規定。

請記住,內容類型在理論上可能取決於外部性,如工作流,事件接收器,InfoPath表單,解決方案等,這些將更難/不可能通過OOTB Web服務複製到新環境。

+1

服務器對象模型支持工作對一個偏遠的農場,通過使用SPFarm.Open的方法,但我不會推薦它,因爲它很容易犯錯誤導致你突然對當地農場工作。 –

1

在談論SharePoint 2010時,應該看看Content Type Hub。通過使用Content Type Hub,您可以使用元數據服務應用程序在SharePoint SiteCollections和WebApplications之間輕鬆共享ContentType。

所以你不必手動複製的內容類型。