SharePoint-Fehler: Der server hat nicht zulassen, dass Nachrichten, die größer als 2097152 bytes

Habe ich web-service, zeigen Sie auf sharepoint 2013 Office 365. Ich benutze das client-Objekt-Modell. Ich bin versucht, zu aktualisieren der xml-Datei, welche 4 Anlagen in ihm. Wenn ich das mache, wenn ich große binäre Daten in der xml-Datei bekomme ich folgende Fehlermeldung :

Nachricht

In der request-message ist zu groß. Der server lässt nicht zu Nachrichten
größer als 2097152 bytes.

Ich weiß, ich bin wahrscheinlich zu haben, Sie zu trennen die Anlagen aus der xml-Datei aber derzeit mein infopath Formular speichert Sie dort. Gibt es eine Möglichkeit, ich kann erhöhen die Anfrage Länge oder vielleicht chunk zu sparen, oder so etwas. Ich wirklich nur das ändern eines Knoten-und es wird nicht funktionieren, es sei denn, ich update die xml-Datei. Danke . - Code Unten.

Mein Code:

ListItem docReq = GetDocRequestLight(docRequestID, businessID);
string fPath = (string)docReq["FileRef"];
using (FileInformation fInfo = Microsoft.SharePoint.Client.File.OpenBinaryDirect(ctx, fPath))
{
    XmlDocument xmlDoc = new XmlDocument();
    xmlDoc.Load(fInfo.Stream);
    XmlNamespaceManager xmlNameSpaceMgr = new XmlNamespaceManager(xmlDoc.NameTable);
    xmlNameSpaceMgr.AddNamespace("my", DocReqXmlNameSpace);

    //Get Parent Node
    XmlNode node = xmlDoc.SelectSingleNode(GetXPathFromItemKey(velmaKey), xmlNameSpaceMgr);

    DateTime outDate;
    bool outBool;
    if (DateTime.TryParse(newValue, out outDate))
        node.InnerText = outDate.ToString("yyyy-MM-dd");
    if (Boolean.TryParse(newValue, out outBool))
        node.InnerText = newValue;

    //Update Statuses
    XmlNode statusIDNode = xmlDoc.SelectSingleNode(DocReqStatusIDFieldXPath, xmlNameSpaceMgr);
    statusIDNode.InnerText = updatedStatus.ID.ToString();
    XmlNode statusNode = xmlDoc.SelectSingleNode(DocReqStatusFieldXPath, xmlNameSpaceMgr);
    statusNode.InnerText = updatedStatus.Name.ToString();

    //Save File
    docReq.File.SaveBinary(new FileSaveBinaryInformation()
    {
        Content =   Encoding.UTF8.GetBytes(xmlDoc.OuterXml),
    });

    ctx.ExecuteQuery();
InformationsquelleAutor Carter | 2013-09-17
Schreibe einen Kommentar