Lists.UpdateList - Méthode
Met à jour une liste basée sur les définitions de champ spécifié et les propriétés de la liste.
Espace de noms : WebSvcLists
Assembly : STSSOAP (dans STSSOAP.dll)
Syntaxe
'Déclaration
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/sharepoint/soap/UpdateList", RequestNamespace := "https://schemas.microsoft.com/sharepoint/soap/", _
ResponseNamespace := "https://schemas.microsoft.com/sharepoint/soap/", _
Use := SoapBindingUse.Literal, ParameterStyle := SoapParameterStyle.Wrapped)> _
Public Function UpdateList ( _
listName As String, _
listProperties As XmlNode, _
newFields As XmlNode, _
updateFields As XmlNode, _
deleteFields As XmlNode, _
listVersion As String _
) As XmlNode
'Utilisation
Dim instance As Lists
Dim listName As String
Dim listProperties As XmlNode
Dim newFields As XmlNode
Dim updateFields As XmlNode
Dim deleteFields As XmlNode
Dim listVersion As String
Dim returnValue As XmlNode
returnValue = instance.UpdateList(listName, _
listProperties, newFields, updateFields, _
deleteFields, listVersion)
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/sharepoint/soap/UpdateList", RequestNamespace = "https://schemas.microsoft.com/sharepoint/soap/",
ResponseNamespace = "https://schemas.microsoft.com/sharepoint/soap/",
Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public XmlNode UpdateList(
string listName,
XmlNode listProperties,
XmlNode newFields,
XmlNode updateFields,
XmlNode deleteFields,
string listVersion
)
Paramètres
listName
Type : System.StringChaîne qui contient le GUID de la liste.
listProperties
Type : System.Xml.XmlNodeFragment XML sous la forme suivante, qui peuvent être assignés à un objet System.Xml.XmlNode et qui contient toutes les propriétés de liste à mettre à jour.
newFields
Type : System.Xml.XmlNodeFragment XML sous la forme suivante, qui peuvent être affectés à un objet System.Xml.XmlNode et qui contient les éléments du champ à l'intérieur des blocs de méthode afin que les opérations d'ajout peuvent être suivies individuellement.
updateFields
Type : System.Xml.XmlNodeFragment XML sous la forme suivante, qui peuvent être affectés à un objet System.Xml.XmlNode et qui contient les éléments du champ à l'intérieur des blocs de méthode afin que les opérations de mise à jour peuvent être suivies individuellement.
deleteFields
Type : System.Xml.XmlNodeFragment XML sous la forme suivante qui contient les éléments du champ spécifiant les noms des champs à supprimer à l'intérieur des blocs de méthode afin que les opérations de suppression peuvent être suivies individuellement.
listVersion
Type : System.StringChaîne qui contient la version de la liste qui est mis à jour afin que la détection de conflit peut être effectuée.
Valeur renvoyée
Type : System.Xml.XmlNode
Un fragment XML qui contient le schéma de liste, une fois que les modifications sont appliquées et un bloc de résultats pour chaque champ que les nouveautés, mis à jour ou supprimé. Le fragment est sous la forme suivante et peut être affecté à un objet System.Xml.XmlNode .
<Results xmlns="https://schemas.microsoft.com/sharepoint/soap/">
<NewFields>
<Method ID="1">
<ErrorCode>0x00000000</ErrorCode>
<Field Type="DateTime" DateOnly="TRUE"
DisplayName="Field1_Display_Name" FromBaseType="TRUE"
Name="Field1_Name" ColName="datetime2" />
</Method>
<Method ID="2">
<ErrorCode>0x00000000</ErrorCode>
<Field Type="Text" DisplayName="Field2_Display_Name"
Required="TRUE" FromBaseType="TRUE"
Description="Description" Name="Field2_Name"
ColName="nvarchar4" />
</Method>
</NewFields>
<UpdateFields>
<Method ID="3">
<ErrorCode>0x00000000</ErrorCode>
<Field Type="Number" Name="NumberColumn" DisplayName="Numbers"
Required="TRUE" FromBaseType="TRUE"
Description="Description" ColName="float1" />
</Method>
<Method ID="4">
<ErrorCode>0x00000000</ErrorCode>
<Field Type="Text" Name="Title" DisplayName="Title"
Required="TRUE" FromBaseType="TRUE"
Description="Description" ColName="nvarchar1" />
</Method>
</UpdateFields>
<DeleteFields>
<Method ID="5">
<ErrorCode>0x00000000</ErrorCode>
</Method>
<Method ID="6">
<ErrorCode>0x00000000</ErrorCode>
</Method>
</DeleteFields>
<ListProperties DocTemplateUrl=""
DefaultViewUrl="/Site_Name/Lists/List_Name/AllItems.aspx"
ID="{6800A6B5-5B01-4E7B-B847-7F0C01F1F602}" Title="List_Name"
Description="New_Description"
ImageUrl="/_layouts/images/itgen.gif"
Name="{6800A6B5-5B01-4E7B-B847-7F0C01F1F602}" BaseType="0"
ServerTemplate="100"
Created="20030619 05:35:34" Modified="20030619 05:39:43"
LastDeleted="20030619 05:35:34"
Version="11" Direction="none" ThumbnailSize="" WebImageWidth=""
WebImageHeight=""
Flags="4096" ItemCount="0" AnonymousPermMask=""
RootFolder="/Site_Name/Lists/List_Name"
ReadSecurity="1" WriteSecurity="1" Author="1"
EventSinkAssembly="" EventSinkClass=""
EventSinkData="" EmailInsertsFolder="" AllowDeletion="True"
AllowMultiResponses="False"
EnableAttachments="True" EnableModeration="False"
EnableVersioning="False" Hidden="False"
MultipleDataList="False" Ordered="False" ShowUser="True" />
</Results>
Exemples
L'exemple de code suivant modifie les champs et les propriétés d'une liste spécifiée dans le site actuel, en montrant comment implémenter chaque paramètre de la méthode UpdateList . L'exemple utilise la méthode GetList pour renvoyer la version de la liste et utilise un objet XmlDocument pour créer des objets XmlNode pour les paramètres.
Cet exemple suppose qu'une directive de Imports (Visual Basic) soit incluse pour l'espace de noms System.Xml ou de using (Visual c#).
Dim listService As New Web_Reference_Folder.Lists()
listService.Credentials = System.Net.CredentialCache.DefaultCredentials
Dim ndList As XmlNode = listService.GetList("List_Name")
Dim ndVersion As XmlNode = ndList.Attributes("Version")
Dim xmlDoc = New System.Xml.XmlDocument()
Dim ndDeleteFields As XmlNode = xmlDoc.CreateNode(XmlNodeType.Element,
"Fields", "")
Dim ndProperties As XmlNode = xmlDoc.CreateNode(XmlNodeType.Element,
"List", "")
Dim ndTitleAttrib As XmlAttribute =
CType(xmlDoc.CreateNode(XmlNodeType.Attribute, "Title", ""),
XmlAttribute)
Dim ndDescriptionAttrib As XmlAttribute =
CType(xmlDoc.CreateNode(XmlNodeType.Attribute, "Description", ""), _
XmlAttribute)
Dim ndNewFields As XmlNode = xmlDoc.CreateNode(XmlNodeType.Element,
"Fields", "")
Dim ndUpdateFields As XmlNode = xmlDoc.CreateNode(XmlNodeType.Element,
"Fields", "")
ndTitleAttrib.Value = "List_Name"
ndDescriptionAttrib.Value = "New_Description"
ndProperties.Attributes.Append(ndTitleAttrib)
ndProperties.Attributes.Append(ndDescriptionAttrib)
ndDeleteFields.InnerXml = "<Method ID='5'>
<Field Name='Field1'/></Method>" + _
"<Method ID='6'><Field Name='Field2'/></Method>"
ndNewFields.InnerXml = "<Method ID='1'>" + _
"<Field Type='DateTime' DateOnly='TRUE' DisplayName='NewField1'
FromBaseType='TRUE'/>" + _
"</Method><Method ID='2'>" + _
"<Field Type='Text' DisplayName='NewField2' Required='TRUE'
FromBaseType='TRUE' Description='Description'/>" + _
"</Method>"
ndUpdateFields.InnerXml = "<Method ID='3'>" + _
"<Field Type='Number' Name='Field1' DisplayName='Field1_Display'
Required='TRUE' FromBaseType='TRUE'
Description='Description'/>" + "</Method><Method ID='4'>" + _
"<Field Type='Text' Name='Field2' DisplayName='Field2_Display'
Required='TRUE' FromBaseType='TRUE'
Description='Description'/>" + _
"</Method>"
Try
Dim ndReturn As XmlNode =
listService.UpdateList("f2c47fbe-0fe1-4c84-8ed0-f56912f3dca7",
ndProperties, ndNewFields, _
ndUpdateFields, ndDeleteFields, ndVersion.Value)
MessageBox.Show(ndReturn.OuterXml)
Catch ex As Exception
MessageBox.Show("Message:" + ControlChars.Lf + ex.Message +
ControlChars.Lf + _
"StackTrace:" + ControlChars.Lf + ex.StackTrace)
End Try
Web_Reference_Folder.Lists listService = new Web_Reference_Folder.Lists();
listService.Credentials= System.Net.CredentialCache.DefaultCredentials;
XmlNode ndList = listService.GetList("List_Name");
XmlNode ndVersion = ndList.Attributes["Version"];
XmlDocument xmlDoc = new System.Xml.XmlDocument();
XmlNode ndDeleteFields = xmlDoc.CreateNode(XmlNodeType.Element,
"Fields", "");
XmlNode ndProperties = xmlDoc.CreateNode(XmlNodeType.Element, "List",
"");
XmlAttribute ndTitleAttrib =
(XmlAttribute)xmlDoc.CreateNode(XmlNodeType.Attribute,
"Title", "");
XmlAttribute ndDescriptionAttrib =
(XmlAttribute)xmlDoc.CreateNode(XmlNodeType.Attribute,
"Description", "");
XmlNode ndNewFields = xmlDoc.CreateNode(XmlNodeType.Element,
"Fields", "");
XmlNode ndUpdateFields = xmlDoc.CreateNode(XmlNodeType.Element,
"Fields", "");
ndTitleAttrib.Value = "List_Name";
ndDescriptionAttrib.Value = "New_Description";
ndProperties.Attributes.Append(ndTitleAttrib);
ndProperties.Attributes.Append(ndDescriptionAttrib);
ndDeleteFields.InnerXml="<Method ID='5'>" +
"<Field Name='Field1'/></Method>" +
"<Method ID='6'><Field Name='Field2'/>" +
"</Method>";
ndNewFields.InnerXml = "<Method ID='1'>" +
"<Field Type='DateTime' DateOnly='TRUE' DisplayName='NewField1'
FromBaseType='TRUE'/>" +
"</Method><Method ID='2'>" +
"<Field Type='Text' DisplayName='NewField2' Required='TRUE'
FromBaseType='TRUE' Description='Description'/>" +
"</Method>";
ndUpdateFields.InnerXml = "<Method ID='3'>" +
"<Field Type='Number' Name='Field1' DisplayName='Field1_Display'
Required='TRUE' FromBaseType='TRUE'
Description='Description'/>" +
"</Method><Method ID='4'>" +
"<Field Type='Text' Name='Field2' DisplayName='Field2_Display'
Required='TRUE' FromBaseType='TRUE'
Description='Description'/>" +
"</Method>";
try
{
XmlNode ndReturn =
listService.UpdateList("f2c47fbe-0fe1-4c84-8ed0-f56912f3dca7",
ndProperties, ndNewFields, ndUpdateFields, ndDeleteFields,
ndVersion.Value);
MessageBox.Show(ndReturn.OuterXml);
}
catch (Exception ex)
{
MessageBox.Show("Message:\n" + ex.Message + "\nStackTrace:\n" +
ex.StackTrace);
}