1
我知道我們可以在asp.net web項目中處理不同版本的web.config文件(如debug,staging和release)。我們如何通過利用這個asp.net功能在SharePoint項目中做到這一點(要記住,服務器場中可能有多個服務器,即每個服務器需要使用配置設置進行更新)?如何處理sharepoint中Web配置文件的調試版本和發佈版本?
我知道我們可以在asp.net web項目中處理不同版本的web.config文件(如debug,staging和release)。我們如何通過利用這個asp.net功能在SharePoint項目中做到這一點(要記住,服務器場中可能有多個服務器,即每個服務器需要使用配置設置進行更新)?如何處理sharepoint中Web配置文件的調試版本和發佈版本?
您應該在FeatureReceiver
的FeatureActivated
事件中使用SPWebConfigModification
類註冊您的web.config更改。以下是關於如何使用它們的article。然後,您可以在開發/舞臺/製作中使用3種不同配置的xml文件。在您的FeatureActivated
事件中,您可以根據當前網站的地址加載特定環境的配置。例如,你將有一個名爲'mysite.stage.com'的舞臺網站,因此xml將是'mysite.stage.com.xml'。
public override void FeatureActivated(SPFeatureReceiverProperties properties)
{
base.FeatureActivated(properties);
SPSite siteCollection = properties.Feature.Parent as SPSite;
string host =
siteCollection.WebApplication.GetResponseUri(SPUrlZone.Default).Host;
string fileName = String.Format("{0}.xml", host);
// Read the xml and make web config modifications...
}