• SharePoint类库简要总结


    编写程序时,合理地使用 try-catch 语句是一种良好的编程习惯。
    应该尽可能对所有可能出错的语句进行 try-catch ,
    如果有必要,捕获每种特定异常,并提供更加友好的出错信息,使得程序更加人性化。


    System.Web.UI.WebControls.WebParts; 为WebPart类的所在。

    控件有: Button , TextBox , HtmlTableCell , Labe

    它的公共属性有 :
    AllowMinimize : 是否允许最小化;
    Caption : WebPart的说明,标题后面的文字;
    Description : WebPart的简介;
    FrameState : WebPart的状态, Minimized 或 Normal ;
    FrameType : WebPart边框的类型 , 有以下几种,Default(默认,使用该WebPart所在WebPartZone设定),None,Standard,TitleBarOnly(有标题栏无边框)
    Height/Width : webPart 的长度和宽度;
    ID : WebPart的ID;
    PartImageLarge/PartImageSmall : WebPart的图片,通过设置这个图片,可以在管理WebPart时方便地找到该WebPart,与其他WebPart区分开;
    Title : WebPart的标题;
    ZoneID : WebPart 所在WebPartZone 的ID;

    WebPart还有一些公有的或protected 函数 ,
    Controls.Add( "控件对象" ) 在WebPart上添入控件。

    protected 成员:
    protected override void Render( System.Web.UI.HtmlTextWriter writer) //默认行为是依次遍历Controls中的控件,并将他们输出。
    protected override void OnLoad( EventArgs e ) //首次加载时处理的事件
    protected override void CreateChildControls() //由 Asp.net 页面框架调用 , 以通知服务器控件创建他们包含的任何子控件,以便回发或呈现做准备。


    Microsoft.SharePoint;
    //该命名提供了WSS中关于网站内容的基本的对象模型,例如网站,列表,文件和用户等。


    SPSite 类
    //网站的集合

    构造函数 : SPSite( String url ) ,SPSite( Guid x )

    //Guid是对象的唯一标识符,通过Guid可以获取该对象实例,例如 SPSite , SPWeb , SPList , SPView , Area , AreaListing
    //有些还采用整数做标识符,例如 表项SPListItem , 角色SPRole , 用户SPUser


    AllWebs 属性
    //可以获取该网站集中的所有网站,包括一个顶级网站和它下面的所有子网站。
    //并且可以通过 webs[ int index ] , webs[ String url ] , webs[ Guid guid ] ,获得特定的SPWeb对象。


    RootWeb 属性
    //该属性是个SPWeb类型变量,它对所对应的对象是该网站集中的顶级网站,通过它可以逐步获得该网站级中的层级结构。

    OpenWeb 函数
    //返回一个SPWeb类型变量,通过该函数可以获得网站集中一个特定的网站。
    OpenWeb( );
    OpenWeb( Guid guid );
    OpenWeb( String url );


    SPWeb 类
    //网页内容集合

    //大多数和WSS相关的内容都是通过使用SPWeb的一些成员变量来获取的,这些成员主要有:

    AllUsers : 网站所有成员,以及通过域组来浏览网站的用户;
    Files : 网站下的所有文件;
    Folders : 网站下的所有目录;
    Groups : 所有跨网站用户组;
    Lists : 网站下的所有列表;
    ListTemplates : 网站下的所有列表模版;
    Permissions : 网站下的权限;
    Roles : 网站下的所有角色;
    Users : 属于该网站的所有用户;
    Webs : 该网站的所有子网站;

    //此外,SPWeb一些成员变量对应于网站的一些属性,例如:
    AllowAnonymousAccess : 网站是否允许匿名访问(只读);
    Author : 网站的创建者;
    Created : 网站的创建时间;
    CurrentUser : 当前的用户;
    ID : 唯一标识该网站的Guid;
    IsRootWeb : 该网站是否为顶级网站;
    ParentWeb : 该网站的父网站;
    Site : 该网站所属的网站集;
    Title : 该网站的标题;
    Url : 该网站的url绝对路径;
    WebTemplate : 该网站的模版;

    //SPWeb 对象提供的一些方法
    GetFile : 通过url获得一个文件的对象(SPFile);
    GetFolder : 通过url获取一个目录的对象SPFolder;
    GetListOfType : 获取特定类型的列表的集合;
    GetSubwebsForCurrentUser : 获取该网站的子网站(可以指定模板);
    GetViewFromUrl : 通过url获取一个列表的视图SPView;
    SaveAsTemplate : 将网站保存为模板;
    SearchDocuments : 搜索网站的文档库(需要开启全文检索功能);
    SearchListItems : 搜索列表条目;
    Update : 使网站属性的修改生效;
    //在修改对象属性时,只有Update后才会生效

    SPList 类
    //列表功能类
    //获取SPList的主要方法是通过访问 SPWeb.lists 这一 SPListCollection类型的属性。
    //从该集合获得一个特定的列表对象有如下3种方法:
    lists[ String name ];
    lists[ Guid guid ];
    lists[ int index ];


    //添加一个列表通过调用SPListCollection.Add方法来完成,创建成功后返回新列表的Guid。
    Add( String tile , String description , SPListTemplate template );
    //前两个参数分别指定列表的名称和简介,第3个参数是一个SPListTemplate型变量,
    //指定该列表创建时所需要的列表模板对象,该对象可以用SPWeb.ListTemplates属性获得;

    Add( String title , String description , SPListTemplateType type );
    //第3个参数是SPListTemplateType型枚举指定列表模板,枚举中所包含的都是
    //网站默认拥有的基本类型的列表模板,如果创建一个自定义列表,可以用 SPListTemplateType.GenericList 做为该参数;

    Add( String title , String description , SPListTemplate template , SPDocTemplate docTemplate );
    //该方法会创建一个文档库,第3个参数指定列表的模板对象,第4个参数指定文档库的对象,
    //该对象可以通过SPWeb.DocTemplates属性获得;


    //删除列表时,通过调用SPListCollection.Delete 方法完成
    Delete( Guid guid );//通过Guid来删除列表


    //SPlist 有如下一些常用属性:
    BaseTemplate : 该列表所对应的列表模板;
    BaseType : 该列表的基础类型;
    DefaultView : 该列表的默认视图对象;
    EnableAttachments : 该列表是否允许添加附件;
    EnableModeration : 该列表是否开启审批功能;
    Fields : 列表字段的集合;
    Forms : 列表表单的集合,主要有浏览,添加和修改几个页面;
    ID : 标适该列表的唯一的Guid;
    Items : 列表条目的集合;
    ParentWeb : 列表所在的网站对象;
    Title : 列表的标题;
    Views : 该列表的视图的集合;
    //修改属性后要通过 SPList.Update 方法使修改生效.

    SPView 类
    //视图除了负责数据的多样化显示,视图的另外一个重要作用就是对数据的筛选和排序
    //在SharePoint环境中可以直接对视图的这些内容方便地进行修改,通过使用计算字段,可以更加丰富筛选和排序功能;

    //获取SPView 对象有3种方法:
    通过List.DefaultView 属性得到该列表的默认视图;
    通过SPWeb.GetViewFromUrl 方法根据url获取到该视图,在实际使用中,可以使用这种方法先获得一个视图,再得到这个视图所在的列表对象;
    通过List.Views 得到该列表的所有视图,再通过以下3种方式得到特定的视图:
        views[ String name ];
        views[ Guid guid ];
        views[ int index ];

    //添加一个视图,通过SPViewCollection.Add方法来完成:
    Add( String name , StringCollection fields , String query , uint rowLimit , bool paged , bool makeDefault);
    //name参数指定视图名称 , fields参数指定了需要显示的字段名的集合,
    //query参数指定了对数据的筛选条件,rowLimit参数指定了视图中一次所返回的列表条目的最大个数,
    //paged参数指定了该视图是否支持翻页, makeDefault 参数指定了是否需要将该视图作为默认视图;

    Add( String name , StringCollcection fields , String query , uint rowLimit , bool paged , bool makeDefault, SPViewCollection.SPViewType type , bool personalView);
    //前面参数与上文相同,type参数指定了该视图的基本类型,personalView参数指定了该视图是否为个人视图。

    //与列表添加方法不同,试图添加方法返回的是 SPview对象,而不是一个Guid;
    //删除一个视图同样使用SPViewCollection.Delete 方法,用视图的Guid作为参数;
    //默认页面浏览一个视图的时候,视图的翻页功能只有"下一页"而没有"上一页",如果需要实现向前翻页功能,需要自己写程序完成;


    //SPView 中常用的一些属性如下:
    ID : 标识该视图的列表对象(SPList);
    ParentList : 包含该视图的列表对象;
    PropertiesXml : 该视图的基本信息,包括URL,名称和类型等;
    Query : 视图中对数据进行筛选的查询XML字符串;
    SchemaXml : 该视图的信息,包括基本信息和例如筛选,分组等;
    Title : 该视图的名称;
    ViewFields : 该视图需要显示的字段的集合;
    Url : 显示该视图所对应的URL;
    //修改属性后需要调用SPView.Update 才能使修改生效


    SPField 类
    //对应于列表中的字段对象。SharePoint的列表由若干个字段所组成,每个字段可以设置为不同的数据类型,也可以拥有不同的属性设置,例如默认值,是否隐藏,是否可以为空等。

    //获得SPField对象方法主要是通过SPList.Fields 属性得到所有字段,再通过两种方法得到特定字段:
    fields[ String dispName ];
    fields[ int index ];

    //为列表添加字段有3种方法:
    Add( String dispName , SPFieldType type , bool bRequired );
    AddLookup( String dispName , Guid lookupListID , bool bRequired );
    AddFieldAsXml( String strXml);

    //SPField 拥有如下一些比较常用的属性。
    DefaultFormula : 计算字段的公式;
    DefaultValue : 字段的默认值;
    Description : 该字段的说明描述信息;
    Filterable : 该字段是否可以被筛选;
    Hidden : 该字段是否在列表中显示;
    InernalName : 该字段的内部名称;
    ParentList : 该字段所在列表的对象;
    ReadOnlyField : 该字段是否被只读;
    Required : 在填写数据时候,该字段是否必填;
    SchemaXml : 该字段设置的信息;
    Sortable : 该字段是否可以被排序;
    Title : 该字段的字段名,即显示名称;
    Type : 该字段的类型,为SPFieldType 类型的枚举;
    //修改后用Update更新才会生效;
    //每个字段都有两个名称,即显示名称 和 内部名称 , 它们在对象模型中对应于 SPField.Title 和 SPField.InternalName 。
    //SPField的子类有,SPFieldText , SPFieldLookup , SPFieldNumber.

    SPListItem 类
    //在列表的实际操作中,最终要接触到的还是作为数据内容部分的列表条目(List Item).
    //在访问列表的某个具体条目之前,都需要先获得一个列表条目的集合。
    //获得列表条目集合的方法:
    使用SPList.Items 属性,该属性返回列表中的所有列表条目,在需要得到或者遍历所有列表条目时,可以使用这种获取列表的方法;
    使用SPList.GetItems 方法,有目的的获得部分列表条目:
       GetItems( SPView view );
       GetItems( SPQuery query );//SPQuery 是负责查询列表条目的一个类,通过定义一个查询,可以方便地获取想要得到的列表条目;
       //SPQuery提供了两种构造函数,一种是无参数的,另外一种可以带有一个SPView类型的参数,即在指定的视图上进行2次查找。
       //SPQuery最核心的一个属性就是Query属性,它是一个字符串的类型,它通过一种特殊定义过的xml形式,即 CAML( Collaborative Application Markup Language )
       //的形式描述一个查询的条件,实际上这个查询字符串和 SPView.Query 属性是相当的。
       GetItems( SPQuery query , String viewID );

    //在使用SPQuery 时,必须每使用一次都要重新进行构造( 即使用new 运算符重新生成一个新的对象),然后再指定Query属性;
    //否则,如果不进行重新构造,即使指定了不同的Query 属性,在每次查询的时候始终得到的是第一次指定的Query 条件的查询结果。

    //获得集合后,在获得某个具体的列表条目时,有下面两种方法。
    items[ int index ];
    GetItemById( int id );//每个列表条目都会有一个该列表中唯一的ID

    //得到列表条目之后,就可以对该条目的内容进行访问或修改了,访问条目某个字段方法最常用的为: item[ String fieldname ]
    //其中 fieldname ,可以使用该字段的显示名称,也可以使用该字段的内部名称。

    //SPListItem属性
    Attachments :该列表条目的附件集合;
    File : 如果该列表是文档库的话,得到该文件的对象;
    ID : 在该列表唯一标识该列表条目的整型;
    ModerationInfomation : 该列表条目的审批信息;
    ParentList : 该列表条目所在列表对象;
    Xml : 以XML的格式返回该列表条目中的所有数据;
    //属性修改后,通过SPListItem.Update使得修改生效;

    //添加一条列表条目方法
    SPListItemCollection.Add()
    //该方法不需要参数,直接返回一个空的SPListItem对象,
    //通过该对象对各字段的内容进行修改,再调用Update就可将该条目添加到该列表中。

    //删除一个列表条目
    SPListItemCollection.DeleteById( int id );
    SPListItemCollection.Delete( int index );

    //SPListItemCollection 类中,有一个非常有用的方法:GetDataTable 即
    DataTable GetDataTable();
    //该方法可以返回由这些列表条目所组成的DataTable对象,以便将数据绑定到一些显示控件上。而没有条目时返回NULL;

    【此文为转载,为自己学习工作之用】

  • 相关阅读:
    oracle11g windows客户端安装
    leetcode做题总结
    后端工程师都应该知道的最佳实践
    阿里云ubuntu下nginx部署上线后报错问题
    漫谈逆向工程
    RPC远程过程调用(Remote Procedure Call)
    stub和proxy使用初衷
    vue如何绑定多个class style
    简单又好看的背景 , 代码实现方格背景
    使用C#.NET调用ICU进行编码检测和编码转换
  • 原文地址:https://www.cnblogs.com/mingmingruyuedlut/p/1889734.html
Copyright © 2020-2023  润新知