ServiceStack: Le quota de longueur maximale de la matrice (16384) a été dépassé lors de la lecture de données XML.

StackOverflow https://stackoverflow.com//questions/22042095

  •  21-12-2019
  •  | 
  •  

Question

J'ai configuré ServiceStack pour fournir des services Web pour mon site Web MVC 4. Je n'utiliserai que SOAP1.2 avec les services Web et jusqu'à présent, cela fonctionne bien.

Sauf lorsque j'essaie d'envoyer un tableau d'octets trop grand après lequel je reçois l'erreur suivante:

Le quota de longueur maximale de la matrice (16384) a été dépassé lors de la lecture de données XML. Ce quota peut être augmenté en modifiant la propriété MaxArrayLength sur l'objet XglDictionaryReaderReaderQuAtas utilisée lors de la création du lecteur XML.

du côté du client, j'ai défini la lecturequotas pour la reliure et il semble le chercher correctement afin que le problème semble être du côté du serveur. Normalement, on ajouterait les paramètres de liaison du service Web dans le web.config mais je ne suis pas sûr de le faire pour le serviceC.

c'est-à-dire si c'est le serviceStack qui cause le problème.

Comment allez-y envoyer une grande quantité de données à un service Web SOAP1.2 créé avec ServiceSack? (Malheureusement, en utilisant un tableau d'octets)

Était-ce utile?

La solution

Comme indiqué par @cvbarros La valeur peut être spécifiée dans le code d'initialisation de l'application:

DataContractSerializer.Instance = new DataContractSerializer(new XmlDictionaryReaderQuotas
{  
    MaxStringContentLength = /* new value */; 
};

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top