有什么办法可以做WSS 3.0网站配置?我的客户的要求是将属性作为将以XML格式定义的变量:组织名称,标识,地址,用户和角色信息。客户端应该能够通过定义XML文件中的属性来将该Web应用程序安装到任何WSS生产服务器。WSS 3.0网站配置
是否有可能编写一个实用程序来解析定义好的XML并相应地配置网站?
有什么办法可以做WSS 3.0网站配置?我的客户的要求是将属性作为将以XML格式定义的变量:组织名称,标识,地址,用户和角色信息。客户端应该能够通过定义XML文件中的属性来将该Web应用程序安装到任何WSS生产服务器。WSS 3.0网站配置
是否有可能编写一个实用程序来解析定义好的XML并相应地配置网站?
可以从对象模型中配置网站,但创建完全自定义的网站超出了单个问题的范围。为了让你开始,你应该看看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
}
}
}
是的,有不止一个。
查看位于Windows SharePoint Services 3.0 Tools: Visual Studio 2005 Extensions的SharePoint Solution Generator。
您可以创建一个满足您所有要求的网站(网页,列表,文档库...),然后生成一个VS项目,该项目将为您的所有网站创建一个SharePoint功能。然后,您可以将该功能部署到任何WSS生产服务器。
您可能会改变VS项目以实现从额外的xml文件读取您的属性的逻辑。
如果您的网站的结构是纯文本的,或者您可以将其保存为模板,那么您也可以编写一个小型控制台应用程序来读取属性xml文件并创建该网站。
创建一个常规的解决方案,或者使用上述解决方案生成器生成.wsp文件。然后创建一个小的控制台应用程序,它需要你提到的变量作为参数。 使用上面列出的代码,从该解决方案中提供新的sitecollection,并将输入的参数(公司名称等)存储在列表中的站点中或SPSite.Properties属性包中,然后您可以从中自定义webparts等。
CodePlex上提供的SharePoint Data Population Tool允许您使用XML定义站点。