收藏 分享(赏)

sharepointapi初级教程.ppt

上传人:无敌 文档编号:315779 上传时间:2018-03-28 格式:PPT 页数:60 大小:663KB
下载 相关 举报
sharepointapi初级教程.ppt_第1页
第1页 / 共60页
sharepointapi初级教程.ppt_第2页
第2页 / 共60页
sharepointapi初级教程.ppt_第3页
第3页 / 共60页
sharepointapi初级教程.ppt_第4页
第4页 / 共60页
sharepointapi初级教程.ppt_第5页
第5页 / 共60页
点击查看更多>>
资源描述

1、Sharepoint API高级,讲师:赵虎,调用Sharepoint API 的准备工作,大家看左面的图,我们要在程序中调用sharepoint api ,但是sharepoint api 并不是c#默认的,所以要在工程中的References中添加对包含Sharepoint api 接口的文件的引用,这个过程有点类似c/c+中添加lib 库。,看左面的图,里面我添加了几个引用,Microsoft.Office.ServerMicrosoft.SharepointMicrosoft.Sharepoint.Publishing一般可以在下面这个位置找到这些文件C:Program FilesCo

2、mmon FilesMicrosoft Sharedweb server extensions12ISAPI,首先,介绍一下常用的对象,SPSiteSPWebSPListSPFolderSPListItem,SPSite对象的实例化及API,SPSite msite=new SPSite(URL);这个URL是Site的绝对地址,例如: http:/machinename/sites/site001/http:/avepoint-uj3dq1/sites/site01/Shared%20Documents/Forms/AllItems.aspx(这个是我机器上的一个list的view的地址)而

3、象这样的URL是不对的/sites/site01/该语句成功运行得到的是一个SPSite实例,如果失败则会抛出一个FileNotFoundException.,还有一点要注意的是,SPSite对象底层上是用unmanaged代码实现的。所以使用完成后一定要记得手动进行释放SPSite oSPSite = new SPSite(http:/server); . additional processing on SPSite . oSPSite.Dispose(); 或者使用using (SPSite oSPSite = new SPSite(http:/server) . additional

4、processing on SPSite .,如何通过SPSite实例获取Connection String,SPSite site = new SPSite(url); string connStr = site.ContentDatabase.DatabaseConnectionString; SqlConnection sqlConn = new SqlConnection(connStr);这样我们就可以得到这个site对应的数据库的connection string ,而后我们便可以通过这个Connection sting 和这个site的数据库建立连接。,关于SPSite中一些常用

5、的属性,SPSite mSite=new SPSite(Url);Guid siteGuid=mSite.ID ;这个属性返回的是这个Site的Guid 对应着的数据库中的Sites表中的Id列String url=mSite.Url; 返回的string 为该site的Rootweb的Url.例如:http:/avepoint-uj3dq1:8002/sites/site01SPWeb rootWeb=mSite.RootWeb;这样可以取得这个Site的rootweb对应的SPWeb对象的实例,后面我们会对SPWeb进行详细的介绍。,site.RootWeb.Url; site.RootW

6、eb.Title; site.RootWeb.Description; site.RootWeb.Language; site.RootWeb.WebTemplate + #+site.RootWeb.Configuration; site.Owner.LoginName; site.Owner.Name; site.Owner.Email;,下面我们来介绍一下如何创建一个Site。我们可以在创建完成后得到一个SPSite的实例SPWebApplication webapp=SPWebApplication.Lookup(new Uri(url);SPSite mSite=webapp.Sit

7、es.Add(Url,Title,Description,LCID,WebTemplate,OwnerLogin,OwnerName,OwnerEmail,SecondaryContactLogin,SecondaryContactName,SecondaryContactEmail);或者用SPSite mSite=webapp.Sites.Add(Url,Title,Description,LCID,WebTemplate,OwnerLogin,OwnerEmail,SecondaryContactLogin,SecondaryContactName,SecondaryContactEma

8、il);,下面我来简短的介绍一下各个参数的意义。Url,string 类型,为新建立site的对应的url地址。Title ,string 类型,为新建立site的对应的标题。Description ,string 类型,为新建立site对应的描述信息。LCID(locale identifier ),uint 类型,为新建立的site的地域标识。WebTemplate,string 类型,为新建立的site的rootweb的模板类型 ,例如:STS#0 OwnerLogin,string 类型,为新建立的site的网站owner的Loginname 例如:SCBadministrator“O

9、wnerName,string 类型,为新建立的site的网站owner的name ,这个很多情况是和上面的是一样的,”SCBadministrator”OwnerEmail ,string 类型,为新建立的site的网站owner的Email地址。例如,这个参数不提供也没有问题,SecondaryContactLogin,SecondaryContactName,SecondaryContactEmail,这3个参数可以有也可以没有,他和你在sharepoint中网页上创建的时候是否填写Secondary Site Collection Administrator 的意义是相同的。,SPWe

10、b的实例化及相关API,其中mSite是SPSite的实例SPWeb mWeb=mSite.RootWeb;SPWeb mWeb=mSite.OpenWeb(WebName);这里要注意的是调用的参数是webName,不是title.title和webName不一定一样。例如RootWeb的Name可以是“”而Title是“subsite01”,不过大多数情况是一样的mSite.AllWebsGuid Guid是web在数据库中对应的GuidmSite.AllWebsUrl,这里的URL是web的Relative Url,SPWeb的使用,在一般的应用场景下,SPWeb是使用最多的一个对象模型

11、,因为几乎所有的MOSS的内容都是依附于SPWeb对象的,在编程中也是使用SPWeb来获取其他的对象模型。大多数和MOSS相关的内容都是通过使用SPWeb的一些成员变量来获取的,这些成员变量主要有: AllUsers:网站内的所有成员,以及通过域组(domain group)来浏览网站的用户;Files:网站下的所有文件;Folders:网站下的所有目录;,Groups:所有跨网站用户组;Lists:网站下的所有列表;ListTemplates:网站下的所有列表模板;Permissions:网站下的权限;Roles:网站下的所有角色;Users:属于该网站的所有用户;Webs:该网站的所有子网

12、站。通过使用这些成员变量,就可以获取到相应内容的对象集合(Collection),进而获取需要的内容。此外,SPWeb的某些成员变量对应于该网站的一些属性,例如:AllowAnonymousAccess:网站是否允许匿名访问(只读);,Author:网站的创建者(只读);Created:网站的创建时间(只读);CurrentUser:当前的用户(只读);ID:唯一标识该网站的Guid(只读);IsRootWeb:该网站是否为顶级网站(只读);ParentWeb:该网站的父网站(只读);Site:该网站所属的网站集(只读);Title:该网站的标题;Url:该网站的url(绝对路径)(只读);W

13、ebTemplate:该网站的模板(只读)。,SPWeb对象还提供了一些方法,例如:GetFile: 通过url获取一个文件的对象(SPFile);例如:mWeb.GetFile(“http:/avepoint-uj3dq1:8002/sites/site01/Shared Documents/kpi.txt”);或者 mWeb.GetFile(“/sites/site01/Shared Documents/kpi.txt”);GetFolder: 通过url获取一个目录的对象(SPFolder);例如: mWeb.GetFolder(“http:/avepoint-uj3dq1:8002/s

14、ites/site01/Shared Documents/test”)或者 mWeb.GetFolder(“/sites/site01/Shared Documents/test”);GetListOfType:获取特定类型的列表的集合;例如:mWeb.GetListsOfType(SPBaseType.DocumentLibrary);GetSubwebsForCurrentUser:获取该网站的子网站(可以指定模板);,GetViewFromUrl:通过url获取一个列表的视图(SPView);例如 :mWeb.GetViewFromUrl(“http:/avepoint-uj3dq1:8

15、002/sites/site01/Shared Documents/Forms/AllItems.aspx”);SaveAsTemplate:将网站保存为模板;SearchDocuments:搜索网站的文档库(需要开启全文检索功能);SearchListItems:搜索列表条目;Update:使网站属性的修改生效。,在SharePoint的对象模型中,一些比较重要的对象都会拥有Update方法(例如SPWeb、SPList、SPField和SPListItem),在修改这些对象的属性时,只有在调用Update方法之后,这些修改才会真正生效。仅限普通属性,不包括集合类的属性,比如SPWeb.Li

16、sts中添加或删除一个列表,不需要调用SPWeb.Update方法。这一点需要特别引起注意 一个小技巧:在.NET对象模型中,每个类都会有ToString函数(继承自Object类),一般来说每个类也都会对这个方法进行重写。SPWeb的ToString方法一般情况下就是返回了SPWeb.Title这个属性。,SPList对象实例化及使用,在使用列表的功能之前,通常都需要首先获取该列表对象,获取SPList的主要方法是通过访问SPWeb.Lists这一SPListCollection类型的属性。从该集合中获得一个特定的列表对象有如下三种方法:listsstring name:通过该列表的名称获取

17、;listsGuid guid:通过唯一标识该列表的Guid获取;listsint index:通过列表在该列表集合中的下标来获取,在网站上添加列表,也是通过SPListCollection对象来完成的。添加一个列表通过调用SPListCollection.Add方法来完成,创建成功之后,会返回新列表的Guid。该方法提供了如下三种形式: Add(string title, string description, SPListTemplate template):前两个参数分别指定列表的名称和简介,第三个参数是一个SPListTemplate型变量,指定该列表创建时所需要的列表模板对象,该对象

18、可以通过SPWeb.ListTemplates属性获得;例如:mWeb.Lists.add(“listtitle”,”listdescription”, rootweb.ListTemplatesDocument Library);,Add(string title, string description, SPListTemplateType type):前两个参数指定列表的名称和简介,第三个参数使用SPListTemplateType型枚举指定列表模板,枚举中所包含的都是网站默认拥有的基本类型的列表模板,如果要创建一个自定义的列表,请使用SPListTemplateType.Generic

19、List作为该参数;例如:mWeb.Lists.Add(“listtitle”,”listdescription”,SPListTemplateType.GenericList);,Add(string title, string description, SPListTemplate template, SPDocTemplate docTemplate):该方法会创建一个文档库(一种特殊的列表),前两个参数分别指定列表的名称和简介,第三个参数制定列表的模板对象,第四个参数指定文档库的模板对象,该参数是一个SPDocTemplate类型的变量,可以通过SPWeb.DocTemplates属性

20、获得。删除列表时,通过调用SPListCollection.Delete方法来完成,该方法只有一种形式:Delete(Guid guid):通过列表的Guid删除该列表。,SPList类有如下一些常用的属性: BaseTemplate:该列表所对应的列表模板(只读); BaseType:该列表的基础类型(只读); DefaultView:该列表的默认视图对象(只读); EnableAttachments:该列表是否允许添加附件; EnableVersioning:该列表是否开启version功能; Fields:列表字段的集合(将在下文进行详细介绍); OnQuickLaunch: 该列表是否

21、显示在QuickLaunch之上; ID:标识该列表的唯一的Guid(只读); Items:列表条目的集合(将在下文进行详细介绍); ParentWeb:列表所在的网站对象(只读); Title:列表的标题; Views:该列表的视图的集合(只读)。,这其中值得注意的是BaseTemplate与BaseType的区别:BaseTemplate是生成列表的模板,例如“Link”和“Contacts”等,而BaseType则是列表的基础类型,例如“DiscussionBoard”、“DocumentLibrary”等,每种基础类型的列表都提供了一些普通列表所不具备的特殊的功能,该属性为SPBase

22、Type型的枚举类型。修改列表属性后,通过调用SPList.Update方法使修改生效。,SPField的使用,SPField对应于列表对象中的字段(Field)对象,和传统的数据表一样,SharePoint的列表也是由若干个字段所组成的,每个字段可以设置为不同的数据类型,也可以拥有不同的属性设置(例如默认值、是否隐藏、是否可以为空等)。而SharePoint列表的最大一个特点,就是字段的可定制性,不需要进行任何的编程,也不用深入数据库进行复杂的调整,仅在使用界面上就可以方便地对列表的字段进行添加、删除和修改,这种方便的特性也正是很多用户喜爱SharePoint的一个重要原因。,获得一个SPF

23、ield对象的方法主要是通过SPList.Fields属性得到所有字段,再通过以下两种方法得到特定字段的对象。 fieldsstring dispName:根据该字段的显示名称获得fieldsint index:根据该字段在集合中的下标获得。为列表添加一个字段有三种方法: Add(string dispName, SPFieldType type, bool bRequired) 其中第一个参数指定该字段的显示名称,第二个参数指定该字段的类型,第三个参数指定在填写数据的时候,该字段是否为必填内容。,AddLookup(string dispName, Guid lookupListID, bo

24、ol bRequired)该方法为列表添加一个特殊的字段“查阅项”字段,通过第二个参数指定目标列表的Guid,其余两个参数的含义和使用方法与Add方法相同。AddFieldAsXml(string strXml) 通过一段xml的描述添加一个字段,该描述中需要包括字段等信息,实际上,这段xml描述对应于SPField.SchemaXml属性。需要特别注意的是,以上三种方法所返回的虽然都是string型的变量,但是它们的含义各不相同,Add方法返回的是显示名称,AddLookup方法所返回的是内部名称(这两者的区别稍候会进行介绍),而AddFieldAsXml方法所返回的是一段包含字段名称的xm

25、l。,注意 在添加字段时,bRequired参数(对应与SPField.Required属性)指定的是在用户界面中新建、修改列表项的时候,该字段是否为必填内容。但实际上,如果我们通过对象模型来创建或修改一个列表条目的时候,该字段并不会起到任何限制作用。,SPField拥有如下一些比较常用的属性。DefaultFormula:计算字段的公式;DefaultValue:字段的默认值,即该字段在未进行设置时的初始值;Description:该字段的说明描述信息;Hidden:该字段是否在列表中显示;InernalName:该字段的内部名称;ParentList:该字段所在的列表的对象;ReadOnl

26、yField:该字段是否被只读;Required:在填写数据的时候,该字段是否必填;SchemaXml:该字段设置的信息;Sortable:该字段是否可以被排序;Title:该字段的字段名,即显示名称;Type:该字段的类型,为SPFieldType类型的枚举。,在SharePoint中,每一个字段都有两个名称,即显示名称(DisplayName)和内部名称(InternalName),它们在对象模型中对应于SPField.Title和SPField.InternalName。其中显示名称是在用户使用界面上看到的名称,虽然该名称在网站使用界面的操作中是不可重复的,但是,在使用对象模型添加字段的

27、时候,或者内部管理的时候,可能会有一些重名的字段(其中典型的代表就是每个列表的“标题”字段);而内部名称是SharePoint列表用于内部管理的名称,它在列表中是唯一的,而且其中没有中文和空格(在保存为内部名称时,对于这些字符会进行编码)。,在编写程序的时候,在下列情况中必须使用显示名称:使用SPList.Fieldsname获取该字段对象时,必须通过显示名称。在下列情况中必须使用内部名称:使用SPView.ViewFields的时候,添加、删除都是通过内部名称,获取的时候也是得到内部名称;使用SPView.Query的时候,必须使用内部名称;使用SPQuery(下面会提到该类)的时候,必须使

28、用内部名称。在下列情况中即可以使用显示名称,也可以使用内部名称:使用SPListItemfieldName获取或设置列表项某个字段的值。,SPList list = web.ListsListName;string fieldName = list.Fields.Add(NumDemo, SPFieldType.Number, false);SPFieldNumber field = (SPFieldNumber)list.FieldsfieldName;field.MinimumValue = 0;field.MaximumValue = 100;field.Update();修改字段的属性

29、后,通过调用SPField.Update方法使修改生效。,SPListItem的使用,在列表的实际操作中,最终要接触到的还是作为数据内容部分的列表条目(List Item)。一般来说,在访问列表的某个具体条目之前,都需要先获得一个列表条目的集合,在SharePoint对象模型中,提供了很多种方法来获取列表条目集合:最直接地获取列表条目的方法为,使用SPList.Items属性,该属性返回列表中的所有列表条目。在需要得到或者遍历所有列表条目的时候,可以使用这种获取列表条目的方法。,上面的方法所返回的是SPListItemCollection类型的列表条目集合,获得该集合后,在获得某个具体的列表条

30、目时,有下面两种方法。 itemsint index:通过在集合中的下标得到该条目,这种方法多在遍历集合的时候使用;也可以使用SPListItemCollection.GetItemById方法。 GetItemById(int id):在SharePoint中,每个列表条目都会有一个在该列表中唯一的id(int型),调用SPListItemCollection类的GetItemById方法,就可以通过该id来得到对应的列表条目。,在得到列表条目之后,就可以对该条目的内容进行访问或修改了,访问条目某个字段的方法最常用的方法为: itemstring fieldName,其中fieldName可

31、以使用该字段的显示名称,也可以使用该字段的内部名称。还有一点需要注意的是,该方法所返回的是一个Object类型的变量,如果需要使用该变量的话,必须要对它进行强制类型转换,在转换的时候也要特别注意,如果该条目的该字段没有填写任何内容,那么该返回值是null,如果不加以检查就进行类型转换的话,会引发一个异常(NullReferenceException)。在使用这种方法填写或修改字段数据的时候,除了DateTime类型的数据之外,可以一律使用string类型写入(但是除非特殊需要,不建议使用这种做法)。,在SPListItem中,还有一些比较常用的属性如下。 Attachments:该列表条目的附

32、件集合; File:如果该列表是文档库的话,得到该文件的对象(以上两个属性的使用请参考下一节“文件相关的对象模型”); ID:在该列表中唯一标识该列表条目的整型的id; ModerationInfomation:该列表条目的审批信息;ParentList:该列表条目所在列表的对象; Xml:以Xml的格式返回该列表条目中的所有数据。在列表条目的内容修改后,通过调用SPListItem.Update方法使修改生效。,更改条目内容也可以通过调用SPListItem.SystemUpdate()来实现。SystemUpdate在SDK中的说明是Updates the database with ch

33、anges made to the list item without effecting changes in the modified time or modified by fields.When the SystemUpdate method is implemented, events are triggered, the modifications are reported in the Change and Audit logs, but alerts are not sent and properties are not demoted into documents.,SPLi

34、stItem.SystemUpdate(),SPSite siteCollection = new SPSite(http:/server_name); SPWeb webSite = siteCollection.OpenWeb(); SPList list = webSite.ListsAnnouncements; SPListItem item = list.Items0; itemTitle = New Title; item.SystemUpdate();,添加一个列表条目的方法非常简单,只需要调用SPListItemCollection.Add方法,该方法不需要参数,直接返回一个空

35、的SPListItem对象,通过对该对象对各字段的内容进行修改,再调用Update方法,即可将该条目添加到该列表中。删除一个列表条目,有两种方法: SPListItemCollection.DeleteById(int id)通过列表条目的id来删除该条目; SPListItemCollection.Delete(int index),通过集合中的下标来删除该条目。在通过Delete方法删除一个列表中的所有条目时,注意必须使用下面这种逆序的循环方法:int total = items.Count;for(int i=total-1; i=0; i-) items.Delete(i);而不能正向

36、的循环,更不能使用foreach循环来进行,在初学者中,这是一个比较常见的错误。请读者自己思考这样做的原因。,SPFolder的使用,SPFolder是SharePoint对象模型中文件夹相关的类,它的使用方法相对比较简单。获取一个SPFolder的对象可以通过SPFolderCollection使用以下两种方法获得。 foldersint index:通过文件夹集合中的下标来获得; foldersstring url:通过该文件夹的url来获得。,而SPFolderCollection对象一般可通过SPWeb.Folders属性或SPFolder.SubFolders属性来获得。而在SPWe

37、b和SPList的对象模型中,都有该网站(或列表)所在的根目录的信息,可以直接通过SPWeb.RootFolder属性和SPList.RootFolder属性得到。但是需要特别指出的是,SPList.RootFolder的访问默认是没有开启的,如果想通过这种方法得到一个SPFolder对象,必须先将SPListCollection.IncludeRootFolder属性设为true。,在SPWeb中,也可以使用GetFolder方法来获得该网站中的某个文件夹对应的SPFolder对象。 GetFolder(string url):参数为该文件夹所对应的路径(注意不要包含最后的“/”字符)。文件

38、夹的添加和删除同样是通过SPFolderCollection来完成的。 Add(string url):添加一个文件夹,参数为待添加文件夹的url,该函数成功后直接返回一个SPFolder对象; Delete(string url):删除一个文件夹,参数为待删除文件夹的url。,在SPFolder类中,有如下一些常用的属性。 ContainingDocumentLibrary:如果该文件夹是包含于一个文档库中的,那么该属性返回标识该文档库列表的Guid。该属性只读; Exists:判断该文件夹是否存在,在获取一个文件夹之后(尤其是通过url的方式获取一个文件夹之后),非常有必要先判断该文件夹是

39、否存在,因为在获取文件夹的时候,文件夹不存在并不会引发异常,而在使用一个不存在的文件夹的时候,必然会引发异常。该属性只读; Files:该文件夹下的所有文件的集合; Name:该文件夹的名称(只读);, ParentFolder:它的上一级文件夹的对象(只读); ParentWeb:该文件夹所在网站的对象(只读); ServerRelativeUrl:该文件夹相对于服务器根地址的url(只读); SubFolders:该文件夹下所有子文件夹的集合; Url:该文件夹相对于其所在网站的url(只读)。SPFolder也提供了两个非常有用的函数。CopyTo(string newUrl):将该文件

40、夹复制到参数所指定的url中;MoveTo(string newUrl):将该文件夹移动到参数所指定的url中。,SPFile的使用,SPFile对应于SharePoint对象模型中的文件,它的使用方法与SPFolder类大致相似。在获取SPFile对象的时候,仍是通过SPFileCollection来进行,形式也与获取SPFolder相同。在SPWeb中,也同样提供了SPWeb.GetFile方法来获取一个文件。 GetFile(string url):参数为该文件所在的url。此外,对于文档库列表中的列表条目来说,也可以通过SPListItem.File来得到该文件的对象(关于文档库,稍候

41、会进一步加以说明)。,在删除文件的时候,同样使用SPFile.Delete方法。 Delete(string url):参数为待删除文件的url。添加一个文件与添加文件夹稍有不同,需要指定文件的内容,并且有如下三种不同的形式。 Add(string url, byte content):第一个参数指定待添加文件的url,第二个参数中以字节流的方式指定文件的内容。在指定文件url的时候,既可以使用完整的url(需要保证该目录存在),也可以只使用文件名(即添加到当前文件夹中)。使用该方法添加文件的时候,如果该url已经存在一个文件,则该函数会引发一个异常;,Add(string url, byte

42、 content, bool overwrite):与上一种形式不同,这种形式通过第三个参数来指定当文件已存在时,是否进行覆盖。当overwrite为true时,会对重名的文件进行覆盖;否则,如果出现重名的情况,仍然会引发一个异常; Add(string url, byte content, SPUser createdBy, SPUser lastModifiedBy, DateTime timeCreated, DateTime timeLastModified):添加文件的时候,根据后4个参数,指定文件的创建者、修改者、创建时间、修改时间。但是在使用这种形式的时候需要注意,该程序的执行者

43、必须为网站的管理员,而且该形式只有在WSS网站上有效(在SPS网站上,该方法会产生一个“Access Denied”错误)。,以上三种方法在创建成功之后均会直接返回一个SPFile类型的对象。SPFile类中一些属性及其含义如下,这些属性一律为只读的。 Author:文件的创建者,是一个SPUser类的对象(关于该类,会在下一节中进行说明); CheckedOutBy:文档库的文件允许进行签入和签出的操作,该属性为签出的用户; CheckedOutDate:文件签出的时间; CheckedInComment:文件签入时的评论内容; CheckOutExpires:文件签出的过期时间; Chec

44、kOutStatus:文件签出的状态, Exists:该文件是否存在;,IconUrl:SharePoint为每种常用类型的文件都提供了图标,该属性中保存了该图标的图像文件的文件名(并非完整的url),这些图片一般保存在“_layouts/images/”目录下; InDocumentLibrary:表示该文件是否在文档库中; Item:如果该文件在文档库中,那么该属性(SPListItem类)获取该文件在该文档库列表中的列表条目对象; Length:文件的大小(以字节为单位); ModifiedBy:该文件的最后修改者; Name:该文件的文件名; ParentFolder:该文件所在的目录

45、对象;,Properties:一个Hashtable型的对象,包括该文件的一些常用属性(例如创建者、创建时间、修改者、修改时间、文件大小、文件的版本等信息); ServerRelativeUrl:该文件相对于服务器根地址的url;TimeCreated:文件创建的时间; TimeLastModified:文件最后修改的时间; Url:该文件相对于其所在网站的地址;Versions:SPFileVersionCollection类的对象,SharePoint的文档库可以支持文档的版本管理和控制,该属性中保存了该文件自创建以来的各个版本,同时保存了各版本的信息。(由于篇幅所限,不再一一列举SPFi

46、leVersion类的属性,有兴趣的读者请参考SDK。),SPFile类中也同样提供了一些方法。 CheckIn():将文件签入文档库; CheckOut():将文件从文档库中签出; CopyTo(string newUrl):将文件复制到一个新的url地址中; CopyTo(string newUrl, bool overwrite):将文件复制到新的url地址中,并指定是否覆盖同名文件; MoveTo(string newUrl):将文件移动到一个新的地址中; MoveTo(string newUrl, bool overwrite):将文件移动到一个新的地址中,并指定是否覆盖同名文件;

47、OpenBinary():以byte的形式返回该文件的内容; SaveBinary(byte content):以参数为内容,保存该文件。,该示例中演示了从本地上传文件到文档库的过程,SPFolder folder = web.GetFolder(Shared Documents);if(folder.Exists) FileStream fs = new FileStream(C:Demo.txt, FileMode.Open); byte content = new bytefs.Length; fs.Read(content, 0, (int)fs.Length); folder.Files.Add(Demo.txt, content); fs.Close();else Console.WriteLine(Folder Not Exist!);,SPUser的使用,SPUser是SharePoint中的用户类,在获取SPUser对象的时候,可以通过SPWeb.Users、SPWeb.AllUsers或者SPRole.Users来得到一个SPUserCollection,再通过以下两种方式得到用户。 usersstring loginName:以登录名获取到集合中的用户; usersint index:以集合中的下标获取到用户。,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 实用文档 > 简明教程

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报