在运行时访问SharePoint Web服务

时间:2013-06-20 14:58:50

标签: sharepoint dynamics-crm-2011

我正在尝试制作一个程序,在CRM中从Sharepoint创建文件夹结构(即代码从Microsoft CRM 2011运行)。但是,我的目标之一是通过输入不同的URL来动态访问多个sharepoint站点。

这个想法是,给定一个sharepoint URL和适当的凭据,代码仍然可以与Sharepoint站点进行交互。但是,我试图避免为每个Sharepoint站点添加服务引用(可能包括尚未创建的站点)。

所以,我想知道,是否可以通过运行时提供的URL和凭据来访问Sharepoint,或者每次设置新SP站点时是否需要创建单独的服务引用?

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以使用动态Web服务引用。

看一看     http://www.codeproject.com/Articles/12317/How-to-make-your-Web-Reference-proxy-URL-dynamic

如果您使用的是SharePoint Client Object API,则可以动态设置网址和密码。在app.config文件中配置URL和密码。

using (ClientContext clientcontext = new ClientContext("http://yourspserverurl/")) {
      clientcontext.Credentials = new NetworkCredential("username", "password", "domain");
      List list = clientcontext.Web.Lists.GetByTitle("your sharepoint list");
      clientcontext.ExecuteQuery();

}

对于SharePoint 2013

Please see my blog https://mydevexperience.wordpress.com/2013/10/20/sharepoint-2013-office-365-authentication-using-sharepoint-client-object-model/