-
Web service Lists.asmx
Bonjour,
J'aimerai créer des pages dans la bibliotheque de page de moss.
Cela fonctionne correctement avec spsite mais le pb sait qu'il faut que je le fasse sur la prod sans VS.
Donc j'essaye d'utiliser le webservice Lists.asmx mais je n'ai jamais de resultat en retour.
Avez-vous une solution?
NetworkCredential netCredential = new NetworkCredential("-----", "-----");
Uri uri = new Uri("http://-----");
ICredentials _auth = netCredential.GetCredential(uri, "Basic");
_webService.Credentials = _auth;
System.Xml.XmlDocument doc = new System.Xml.XmlDocument();
XmlDocument xmlDoc = new System.Xml.XmlDocument();
XmlNode ndQuery = xmlDoc.CreateNode(XmlNodeType.Element,"Query","");
XmlNode ndViewFields = xmlDoc.CreateNode(XmlNodeType.Element,"ViewFields","");
XmlNode ndQueryOptions = xmlDoc.CreateNode(XmlNodeType.Element,"QueryOptions","");
ndQueryOptions.InnerXml = "";
ndViewFields.InnerXml = "<FieldRef Name='Titre' />";
ndQuery.InnerXml = "";
XmlNode ndListItems = _webService.GetListItems("Pages", "Tous les documents", ndQuery, ndViewFields, "200", ndQueryOptions, null);
Response.Write(ndListItems.OuterXml);
-
c bon j'ai reussi a recuperer mes valeurs.
En revanche mon but est de créer a la volée des pages aspx dans la biblio de pages.
J'utilise UpdateListItems() mais il ne veut pas me créer la page avec le nom aspx souhaité.
Voici mon code :
StringBuilder sb = new StringBuilder();
sb.Append(@"<Method ID='1' Cmd='New'>");
sb.Append(@"<Field Name='Title'>toto.aspx</Field>");
sb.Append(@"</Method>");
XmlDocument xmlDoc = new System.Xml.XmlDocument();
System.Xml.XmlElement elBatch = xmlDoc.CreateElement("Batch");
elBatch.SetAttribute("OnError", "Continue");
elBatch.SetAttribute("ListVersion", "1");
elBatch.SetAttribute("ViewName", "E43A33C7-2402-43F1-A1C3-BA156E84B6A0");
elBatch.InnerXml = sb.ToString();
XmlNode ndReturn = ListsWebService.UpdateListItems("Pages", elBatch);