2011-11-07 59 views

回答

1

任務1:獲取圖片庫的名單在指定網站上

public static XmlNode GetPicLibListingXML(string imagingServiceURL) 
{ 

       Imaging wsImaging = new Imaging(); 
       wsImaging.UseDefaultCredentials = true; 
       wsImaging.Url = imagingServiceURL; 
       XmlNode xnPicLibs = wsImaging.ListPictureLibrary(); 

       return xnPicLibs; 
    } 

採樣返回XML:

<Library name="{3C1D52F5-5387-490A-9A2D-A9C99A208C00}" title="Tech Images" guid="3c1d52f5-5387-490a-9a2d-a9c99a208c00" url="Tech Images" xmlns="http://schemas.microsoft.com/sharepoint/soap/ois/" /> 

任務2:清單在一個給定的庫圖片

public static XmlNode GetImageFileListing(string imagingServiceURL, string imageFileLibraryName) 

{ 
     Imaging wsImaging = new Imaging(); 
     ImageInfo curImageInfo = new ImageInfo(); 
     wsImaging.UseDefaultCredentials = true; 
     wsImaging.Url = imagingServiceURL; 
     XmlNode xnListItems = wsImaging.GetListItems(imageFileLibraryName, ""); 

     return xnListItems; 
    } 

任務3:下載圖片

private const string ATTR_FILENAME = "name"; 

private const string FILENAMESPACEURI = "http://schemas.microsoft.com/sharepoint/soap/ois/"; 

public static bool DownloadImageFiles(string imagingServiceURL, string imageFileLibraryName, string[] fileNames, string saveToFolder) 

{ 
     Imaging wsImaging = new Imaging(); 
     wsImaging.UseDefaultCredentials = true; 
     wsImaging.Url = imagingServiceURL; 

     XmlElement parent = (XmlElement)wsImaging.Download(imageFileLibraryName, string.Empty, fileNames, 0, true); 

     XmlNodeList files = parent.GetElementsByTagName("File", FILENAMESPACEURI); 

     foreach (XmlNode file in files) 
     { 
      if (Directory.Exists(saveToFolder) == false) 
      { 
       Directory.CreateDirectory(saveToFolder); 
       } 

      byte[] fileBytes = Convert.FromBase64String(file.InnerText); 

      using (FileStream fs = File.OpenWrite(saveToFolder + file.Attributes[ATTR_FILENAME].Value)) 
      { 
        BinaryWriter writer = new BinaryWriter(fs); 
        writer.Write(fileBytes); 
        writer.Close(); 
       } 
      } 
      return true; 
     } 

注:

  • 成像()類的Web引用imagining.asmx
  • 的下載調用本地返回XML這樣喲Uneed公司通過轉換運行它,如果你需要字節
  • 獲得MSDN上就出在想象Web服務檢查的引用這樣的:

http://msdn.microsoft.com/en-us/library/imaging.imaging.aspx

來源:

http://gourangaland.wordpress.com/2008/05/30/using-the-moss-imaging-web-service-to-download-imagesimaging-asmx/

+0

感謝Tjassens - 你能提供的內容? – Spt2432

+0

這裏你去spt :) – Tjassens

+0

謝謝一堆。我明天會嘗試這個,但看起來像我在找什麼。 – Spt2432