WSS3SDK之:Feature对象模型
Windows SharePoint Services 3.0提供了一套完整的对象模型用于列出给定范围内安装的Feature清单,并控制Feature是否在该服务器场内或网站层次上可用。
Feature类库
-
Microsoft.SharePoint.SPFeature (SPFeatureCollection) 返回一个描述Feature在相应层中状态的对象。在场的Feature集合中的存在性(Microsoft.SharePoint.Administration.SPWebService), Web应用程序的 (Microsoft.SharePoint.Administration.SPWebApplication), 网站集的(Microsoft.SharePoint.SPSite), 或网站的 (Microsoft.SharePoint.SPWeb) 层中指示该Feature是否激活。如果集合中缺少对应的i SPFeature 对象就说明在给定范围内没有激活该Feature。 命名空间: Microsoft.SharePoint
-
Microsoft.SharePoint.SPFeatureProperty (SPFeaturePropertyCollection) 代表了某Feature的属性。命名空间:Microsoft.SharePoint
-
Microsoft.SharePoint.SPFeatureScope 一个可以指定的可能的范围的枚举,包括 Farm, WebApplication, Site, 和 Web. 命名空间: Microsoft.SharePoint
-
Microsoft.SharePoint.Administration.SPFeatureDefinition (SPFeatureDefinitionCollection) 包括了一个Feature的基础定义,包含名称,范围,ID,版本。同时,可以存储每个Featue中全局的一些属性。 命名空间: Microsoft.SharePoint.Administration
-
Microsoft.SharePoint.SPFeatureDependency (SPFeatureDependencyCollection) 代表了与某Feature的依赖关系。 命名空间: Microsoft.SharePoint
-
Microsoft.SharePoint.Administration.SPElementDefinition (SPElementDefinitionCollection) 代表了当该Feature被激活或使用时预置的一些元素。 命名空间: Microsoft.SharePoint.Administration
访问Feature集合
获取某场,WSS Web应用程序(虚拟服务器),网站集,内Feature的集合,可以使用下列属性之一来访问集合:
-
Microsoft.SharePoint.Administration.SPWebApplication.Features 返回一个虚拟服务器范围上激活的Feature清单,也就是Web应用程序范围内的。
-
Microsoft.SharePoint.Administration.SPWebService.Features 返回服务器场范围内的管理类型的Feature。
-
Microsoft.SharePoint.Administration.SPFarm.FeatureDefinitions 返回服务器场内安装的所有Feature的清单。
-
Microsoft.SharePoint.SPSite.Features 返回网站集内激活状态的Feature清单。
-
Microsoft.SharePoint.SPWeb.Features 返回网站内激活状态的Feature清单。
-
Microsoft.SharePoint.Administration.SPFeatureDefinition.ActivationDependencies 返回某Feature激活依赖的Feature的清单。
示例
下面的例子列出了在特定网站内容激活了的所有Feature的名称和GUID:
SPWeb site = siteCollection.AllWebs["Site"];
SPFeatureCollection siteFeatures = site.Features;
System.Globalization.CultureInfo cultureInfo = new System.Globalization.CultureInfo(1033);
foreach (SPFeature siteFeature in siteFeatures)
{
Response.Write("Title: " + siteFeature.Definition.GetTitle(cultureInfo) + "<BR>ID:"
+ siteFeature.DefinitionId.ToString() + "<BR><BR>");
}
下面的例子使用上面返回的信息来添加Feature到子网站:
System.Guid guid = new System.Guid("6e005f62-f8b2-4073-a673-c035c9129946");
subSite.Features.Add(guid);
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!