2010-10-26 137 views
2

我正在開發一個SharePoint 2010的解決方案,包括一些Web部件和其他組件時,資源文件部署到管理中心的App_GlobalResources文件夾。此外,解決方案需要管理中心中的應用程序頁面進行配置。自動部署解決方案到Web應用程序

所以我的解決方案包含一個額外的功能,放在鏈接到提供配置的應用程序頁面管理中心菜單的自定義操作。該功能具有範圍WebApplication和使用屬性AutoActivateInCentralAdmin設置爲True因此該功能在管理中心啓動時自動的解決方案部署到Web應用程序。我的解決方案的這一部分按預期工作。

但我有關於它的使用在管理中心的應用程序頁面,因爲它們只部署到Web應用程序的文件夾App_GlobalResources的解決方案部署,但不得的了App_GlobalResources資源文件的一些問題中央行政。

所以我想知道爲什麼當資源文件沒有自動部署到管理中心的App_GlobalResources文件夾時使用AutoActivateInCentralAdmin

什麼是每當解決方案部署到服務器場中的任何Web應用程序的資源文件部署到中央主管機關App_GlobalResources文件夾的最佳方式?有沒有一種自動的方法呢?

回答

2

我們在這裏談論的應用程序資源(而不是分配資源),他們應該被部署到{} SharePointRoot \ CONFIG \ Resources文件夾。確保在部署WSP時,將應用程序頁面使用的資源文件部署到該文件夾​​。

當創建一個新的Web應用程序,資源最初複製到App_GlobalResources文件夾,你在這裏很好。

但是,當已經創建Web應用程序(這是你的情況下),你需要的資源被複制到現有的Web應用程序。你可以用這個命令手動執行此

STSADM -o copyappbincontent

或者您也可以通過在您FeatureActivated事件在功能接收下列自動(這是你想要的)這一點。對於管理中心的資源和站點地圖,撥打

SPWebService.AdministrationService.ApplyApplicationContentToLocalServer(); 。

對於常規應用程序頁面資源和站點地圖,

SPFarm.Local.Services.GetValue()ApplyApplicationContentToLocalServer();

+0

糾正我,如果我錯了,但兩者STSADM -o copyappbincontent和ApplyApplicationContentToLocalServer()中,只有資源文件複製到本地服務器上。因此,在一個農場,你將不得不執行命令(一個或席恩每個前端Web服務器。該解決方案是我沒有選擇。 – Flo 2010-10-26 15:59:40

+0

忽略我的第一個評論,我按下「添加註釋」之前,我完成了它。==>糾正我,如果我錯了,但stsadm -o copyappbincontent和ApplyApplicationContentToLocalServer()只複製本地服務器上的資源文件。所以在一個農場你會遇到兩個問題。使用stsadm,您必須在每臺前端服務器上執行該命令。通過功能接收器中的ApplyApplicationContentToLocalServer()方法,資源只能在激活功能的服務器上覆制,而不能在所有前端服務器上覆制。所以這兩個選項都不適合我。 – Flo 2010-10-26 16:17:30

+0

我看到你的顧慮。有些人遇到過類似的問題,我知道在MOSS世界裏,他們最終得到了在功能激活期間啓動的自定義計時器作業。作爲調查的一部分,您可能會遇到這個問題,但仍然可以:http://sharepointinterface.com/2009/06/06/the-applyapplicationcontenttolocalserver-method-and-why-it-comes-up-short/ – 2010-10-26 17:31:28

1

您需要創建一個自定義計時器作業本。如果你在互聯網上搜索,有些人已經開發了這樣的工作。

相關問題