[Sharepoint2007对象模型]第一回:服务器场(SPFarm)

简介:

Sharepoint是微软一个很重要的服务器产品,它可以方便的创建和维护一个网站,在Sharepoint的管理中心提供了很强大的管理工具。同时为了更加灵活的后期定制和开发,Sharepoint提供了完整的对象模型,对象模型也就相当于Sharepoint的二次开发接口,从服务器场到一个网站,以至一个Sharepoint中的列表都有相应的对象模型。本系列希望能对Sharepoint的对象模型进行一个大体的介绍。

第一回:服务器场
服务器场是Sharepoint2007中最高的一个层次,在安装Sharepoint时可以把几台机器安装在同一个服务器场中,比如同一个服务器场中可以包含一台搜索服务器、两台应用服务器......,服务器场对应的对象模型就是SPFarm
在C#中可以直接取得服务器场的对象模型:
         public  SPFarm CurrentFarm  =  SPFarm.Local;

(当前应用程序需要在服务器场内的某台服务器上)
在一个服务器场下主要包含五个对象:功能集定义,属性集,服务器场上的服务器,服务器上的服务,解决方案.
功能集定义包含服务器场的一些功能,对应的对象模型为:SPFeatureDefinition

复制代码
            TreeNode nodeFeature  =  nodeParent.Nodes.Add( " 功能集定义 " );
            
foreach  (SPFeatureDefinition definition  in  CurrentFarm.FeatureDefinitions)
            {
                nodeFeature.Nodes.Add(GetFeatureName(definition));
            }
复制代码
GetFeatureName方法取得功能的名称,(2052代表的是简体中文)
复制代码
         private   string  GetFeatureName(SPFeatureDefinition definition)
        {
            
string  strRet  =  definition.GetTitle( new  System.Globalization.CultureInfo( 2052 ));
            
if  (String.IsNullOrEmpty(strRet))
            {
                strRet 
=  definition.DisplayName;
            }
            
return  strRet;
        }
复制代码
属性集 包含服务器场上定义的一些属性:
复制代码
            TreeNode nodeProperty  =  nodeParent.Nodes.Add( " 属性集 " );
            
foreach  (DictionaryEntry entry  in  CurrentFarm.Properties)
            {
                nodeProperty.Nodes.Add(entry.Key.ToString());
            }
复制代码
服务器场上的服务器 指的是服务场上使用了哪些服务器,比如web服务器的名称,数据库服务的名称等,对应的对象模型为:SPServer
复制代码
            TreeNode nodeServer  =  nodeParent.Nodes.Add( " 服务器场上的服务器 " );
            
foreach  (SPServer server  in  CurrentFarm.Servers)
            {
                nodeServer.Nodes.Add(server.DisplayName);
            }
复制代码
服务器上的服务 指的是提供了哪些服务,比如Web应用程序服务,搜索服务等,对应的对象模型为:SPService
复制代码
            TreeNode nodeService  =  nodeParent.Nodes.Add( " 服务器上的服务 " );
            
foreach  (SPService Service  in  CurrentFarm.Services)
            {
                TreeNode nodeWeb 
=  nodeService.Nodes.Add(Service.TypeName);
                
if  (Service  is  SPWebService)
                {
                    SPWebService webServices 
=  Service  as  SPWebService;
                    ShowWebService(webServices, nodeWeb);
                }
            }
复制代码
ShowWebService方法是用来取得web应用程序服务信息的,在第二回中会详细说明。

解决方案取得的是服务器场上安装了哪些解决方案,我们可以使用 stsadm –o addsolution –filename solution.wsp命令安装自己的解决方案,它对应的对象模型是SPSolution

复制代码
            TreeNode nodeSolution  =  nodeParent.Nodes.Add( " 解决方案 " );
            
foreach  (SPSolution Solution  in  CurrentFarm.Solutions)
            {
                nodeSolution.Nodes.Add(Solution.DisplayName);
            }
复制代码

最后的画面截图如下所示:

小结:本回只是介绍了sharepoint对象模型几个比较大的对象,后面的文章会对一些比较重要的对象进行逐步说明。其中SPWebService是比较重要的对象,会在下回说到




    本文转自永春博客园博客,原文链接:http://www.cnblogs.com/firstyi/archive/2008/07/31/1257549.html,如需转载请自行联系原作者

相关文章
|
3月前
|
API C++
socket编程之常用api介绍与socket、select、poll、epoll高并发服务器模型代码实现(1)
前言   本文旨在学习socket网络编程这一块的内容,epoll是重中之重,后续文章写reactor模型是建立在epoll之上的。
34 0
|
3月前
|
机器学习/深度学习 搜索推荐 算法
推荐系统离线评估方法和评估指标,以及在推荐服务器内部实现A/B测试和解决A/B测试资源紧张的方法。还介绍了如何在TensorFlow中进行模型离线评估实践。
推荐系统离线评估方法和评估指标,以及在推荐服务器内部实现A/B测试和解决A/B测试资源紧张的方法。还介绍了如何在TensorFlow中进行模型离线评估实践。
187 0
|
3月前
|
网络协议 C++ 数据格式
websocket协议介绍与基于reactor模型的websocket服务器实现
websocket协议介绍与基于reactor模型的websocket服务器实现
55 0
|
4月前
|
存储 网络协议 程序员
如何不使用任何模型裸建服务器
如何不使用任何模型裸建服务器
31 0
|
4月前
|
弹性计算 运维 安全
所以!云服务器也可以玩转大模型啦?
原型《完蛋!我被LLM包围了! 》 是魔搭社区联合灵积平台和通义千问2.0模型推出的一款玩坏LLM的智力挑战游戏 。用户可以通过计算巢服务创建出的游戏进行免费体验。即刻体验由云服务器创建的大模型游戏!
31394 1
|
3月前
|
监控 安全 Linux
socket编程之常用api介绍与socket、select、poll、epoll高并发服务器模型代码实现(3)
高并发服务器模型-poll poll介绍   poll跟select类似, 监控多路IO, 但poll不能跨平台。其实poll就是把select三个文件描述符集合变成一个集合了。
35 0
|
3月前
|
存储 Serverless 文件存储
函数计算FC 怎么配置可以让多台服务器共享同一个模型呢?
【1月更文挑战第2天】【1月更文挑战第10篇】函数计算FC 怎么配置可以让多台服务器共享同一个模型呢?
578 1
|
2月前
|
网络协议 Java Linux
用Java来实现BIO和NIO模型的HTTP服务器(二) NIO的实现
用Java来实现BIO和NIO模型的HTTP服务器(二) NIO的实现
|
3月前
|
弹性计算 运维 安全
带你读《弹性计算技术指导及场景应用》——1. 所以!云服务器也可以玩转大模型?(1)
带你读《弹性计算技术指导及场景应用》——1. 所以!云服务器也可以玩转大模型?(1)
|
3月前
|
弹性计算 数据安全/隐私保护
带你读《弹性计算技术指导及场景应用》——1. 所以!云服务器也可以玩转大模型?(2)
带你读《弹性计算技术指导及场景应用》——1. 所以!云服务器也可以玩转大模型?(2)

热门文章

最新文章