[Sharepoint2007对象模型]第二回:Web应用程序服务(SPWebService)
在上一回中说了Sharepoint中的服务器场,在服务器场中最重要的一个服务就是Web应用程序服务。我们自己的Sharepoint网站都是借助于这个服务才能正常运行的,也就是说所有的Sharepoint站点都是搭建在这个服务之上的。Web应用程序服务对应的对象模型为:SPWebService,本回就主要说说这个对象模型。
Web应用程序服务取得方式请参考第一回,它主要包含以下几个对象模型:
1、Web应用程序,指的是在这个Web应用程序服务下放置的几个web应用程序,也就是在Sharepoint的管理中心创建的web应用程序
对应的对象模型为:SPWebApplicatio
TreeNode nodeWebApp = nodeWeb.Nodes.Add("Web应用程序");
foreach (SPWebApplication app in webServices.WebApplications)
{
TreeNode nodeOneWeb = nodeWebApp.Nodes.Add(app.DisplayName);
ShowWebApplication(app, nodeOneWeb);
}
ShowWebApplication是用来取得这个web应用程序信息的,比如这个web应用程序包含几个站点集等,下回分解:)foreach (SPWebApplication app in webServices.WebApplications)
{
TreeNode nodeOneWeb = nodeWebApp.Nodes.Add(app.DisplayName);
ShowWebApplication(app, nodeOneWeb);
}
2、属性集,用来定义此服务包含哪些属性
TreeNode nodeProperty = nodeWeb.Nodes.Add("属性集");
foreach (DictionaryEntry entry in webServices.Properties)
{
nodeProperty.Nodes.Add(entry.Key.ToString());
}
foreach (DictionaryEntry entry in webServices.Properties)
{
nodeProperty.Nodes.Add(entry.Key.ToString());
}
3、应用程序池,指的是此Web服务使用的是哪个应用程序池,在创建Web应用程序时会指定一个应用程序池,也就是在IIS中的应用程序池,一般不同的web应用程序最好使用不同的应用程序池。
对应的对象模型为:SPApplicationPool
TreeNode nodeAppPool = nodeWeb.Nodes.Add("应用程序池");
foreach (SPApplicationPool appPool in webServices.ApplicationPools)
{
nodeAppPool.Nodes.Add(appPool.DisplayName);
}
foreach (SPApplicationPool appPool in webServices.ApplicationPools)
{
nodeAppPool.Nodes.Add(appPool.DisplayName);
}
4、网站配额模板,指的是对某个子网站的配额限制,特别是对个人网站需要指定每个个人网站所允许的大小,在sharepoint的管理中心可以看到:
对应的对象模型为:SPQuotaTemplate
TreeNode nodeQuota = nodeWeb.Nodes.Add("网站配额模板");
foreach (SPQuotaTemplate quota in webServices.QuotaTemplates)
{
nodeQuota.Nodes.Add(quota.Name);
}
foreach (SPQuotaTemplate quota in webServices.QuotaTemplates)
{
nodeQuota.Nodes.Add(quota.Name);
}
执行后的画面如下:
小结:本回介绍了Web应用程序服务的对象模型,这些可能都是一些比较大的概念,下回介绍Web应用程序的对象模型,离我们自己的网站对象模型越来越近了:)