Skip to main content
 首页 » 编程设计

c#之使用 visual studio 2010 使用 Sharepoint 2010 Web 服务

2024年02月23日29lexus

我正在尝试通过 Visual Studio 2010 使用 SharePoint 2010 Web 服务。我想下载文档库的所有文件,这些文件只能由经过身份验证的用户访问。我发现没有教程有效。有人可以帮助我吗?

请您参考如下方法:

试试这个代码:请试试下面的函数。您需要传递 FileURL(文档的完整网址),标题(您要为下载的文件提供的密码名称。)

(注意:此功能需要传递凭据以及您要下载的文档的完整 url。我认为这对您来说已经足够了)

public string DownLoadfiletolocal(string FileURL, string Title) 
{ 
 
//Copy.Copy is a webservice object that I consumed. 
 
Copy.Copy CopyObj = new Copy.Copy(); 
CopyObj.Url = SiteURL + "/_vti_bin/copy.asmx"; // Dynamically passing SiteURL 
NetworkCredential nc2 = new NetworkCredential(); 
nc2.Domain = string.Empty; 
nc2.UserName = _UserName; 
nc2.Password = _Password; 
 
 
string copySource = FileURL; //Pass full url for document. 
 
Copy.FieldInformation myFieldInfo = new Copy.FieldInformation(); 
Copy.FieldInformation[] myFieldInfoArray = { myFieldInfo }; 
byte[] myByteArray; 
 
// Call the web service 
uint myGetUint = CopyObj.GetItem(copySource, out myFieldInfoArray, out myByteArray); 
 
// Convert into Base64 String 
string base64String; 
base64String = Convert.ToBase64String(myByteArray, 0, myByteArray.Length); 
 
// Convert to binary array 
byte[] binaryData = Convert.FromBase64String(base64String); 
 
// Create a temporary file to write the text of the form to 
string tempFileName = Path.GetTempPath() + "\\" + Title; 
 
// Write the file to temp folder 
FileStream fs = new FileStream(tempFileName, FileMode.Create, FileAccess.ReadWrite); 
fs.Write(binaryData, 0, binaryData.Length); 
fs.Close(); 
 
return tempFileName; 
 
}