2009-06-09 99 views
1

有什麼辦法可以做WSS 3.0網站配置?我的客戶的要求是將屬性作爲將以XML格式定義的變量:組織名稱,標識,地址,用戶和角色信息。客戶端應該能夠通過定義XML文件中的屬性來將該Web應用程序安裝到任何WSS生產服務器。WSS 3.0網站配置

是否有可能編寫一個實用程序來解析定義好的XML並相應地配置網站?

回答

2

可以從對象模型中配置網站,但創建完全自定義的網站超出了單個問題的範圍。爲了讓你開始,你應該看看SPWebCollection.Add以及SPSiteCollection.Add

要創建一個網站集和子網站的一些到你的Web應用程序之一,你可以使用這樣的事情:

var farm = SPFarm.Local; 
var solution = farm.Solutions.GetValue<SPSolution>("YourSolution.wsp"); 
var application = solution.DeployedWebApplications.First(); 
var sites = application.Sites; 
using(var site = sites.Add("/", "Root Site", "Description", 1033, "YOURTEMPLATE#1", "YOURDOMAIN\SiteCollectionAdmin", "Site Collection Admin", "[email protected]")) { 

    using(var rootWeb = site.RootWeb) { 

     // Code customizing root site goes here 

     using (var subSite = rootWeb.Webs.Add("SubSite", "Sub Site", "Description", 1033, "YOURTEMPLATE#2", false, false)) { 

      // Code customizing sub site goes here 

     } 
    } 
} 
1

是的,有不止一個。

查看位於Windows SharePoint Services 3.0 Tools: Visual Studio 2005 Extensions的SharePoint Solution Generator。

您可以創建一個滿足您所有要求的網站(網頁,列表,文檔庫...),然後生成一個VS項目,該項目將爲您的所有網站創建一個SharePoint功能。然後,您可以將該功能部署到任何WSS生產服務器。

您可能會改變VS項目以實現從額外的xml文件讀取您的屬性的邏輯。

如果您的網站的結構是純文本的,或者您可以將其保存爲模板,那麼您也可以編寫一個小型控制檯應用程序來讀取屬性xml文件並創建該網站。

1

創建一個常規的解決方案,或者使用上述解決方案生成器生成.wsp文件。然後創建一個小的控制檯應用程序,它需要你提到的變量作爲參數。 使用上面列出的代碼,從該解決方案中提供新的sitecollection,並將輸入的參數(公司名稱等)存儲在列表中的站點中或SPSite.Properties屬性包中,然後您可以從中自定義webparts等。