2010-03-03 3 views
0

На удаленном клиенте я пытаюсь создать новый список на сайте sharepoint. Прямо сейчас, я строю строку CAML и отправляю ее через http-сообщение на мой сайт sharepoint. Я использовал этот метод для обновления элементов списка и создания dws-папок, но я не могу заставить AddList работать. Я получаю сообщение об ошибке «Удаленная ошибка сервера: NotFound».Использование Http Post to AddList() в Sharepoint

вот мой CAML:

 string soapEnv = 
     "<?xml version=\"1.0\" encoding=\"utf-8\"?>" + 
     "<soap:Envelope " + "xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance" + 
     "xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"" + 
     " xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\">" + 
     "<soap:Body>" + 
     "<AddList xmlns=\"http://schemas.microsoft.com/sharepoint/soap\">" + 
      "<listName>" + listName + "</listName>" + 
      "<description>" + "A Test list" + "</description>" + 
      "<templateID>100</templateID>" + 
     "</AddList>" + 
     "</soap:Body>" + 
     "</soap:Envelope>"; 
     return soapEnv; 

Я посылаю это в HTTP Post с этими настройками:

 uri = "[my sharepoint site]/_vti_bin/lists.asmx"; 
     WebClient client = new WebClient(); 
     client.Headers["SOAPAction"] = "http://schemas.microsoft.com/sharepoint/soap/"; 
     client.Headers["content-type"] = "text/xml; charset=utf-8"; 
     client.Encoding = Encoding.UTF8; 
     client.UploadStringCompleted += UploadStringCompleted; 
     try 
     { 
      client.UploadStringAsync(new Uri(uri, UriKind.Absolute), "POST", CAML); 
     } 
     catch (Exception ex) 
     { 
      MessageBox.Show("Error in upload string async: " + ex.Message); 
     } 

Есть идеи? Я вполне уверен, что это не проблема проверки подлинности, поскольку я использовал тот же самый метод в этой же программе для выполнения вышеупомянутых функций. Сайт sharepoint, к которому я добавляю список, является тестовым сайтом, на котором у меня есть полные возможности чтения/записи.

+0

также забыл упомянуть, что это приложение silverlight – pclem12

ответ

0

D'oh!
В этой части мыло: Конверт тег: "XMLNS: XSI = \" http://www.w3.org/2001/XMLSchema-instance " я имел XMLSCHEMA-экземпляр" вместо XMLSchema \ "".
Мне нужны были дополнительные скобки, чтобы закончить эту строку ...