ServiceStack : XML 데이터를 읽는 동안 최대 배열 길이 할당량 (16384)이 초과되었습니다.

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

  •  21-12-2019
  •  | 
  •  

문제

MVC 4 웹 사이트에 대한 웹 서비스를 제공하기 위해 서비스 모두를 설정했습니다. 나는 웹 서비스와 함께 SOAP1.2만을 사용할 것입니다. 지금까지 잘 작동하고 있습니다.

다음 오류가 발생한 바이트 배열을 보내려는 경우를 제외하고는 다음과 같은 오류가 발생합니다.

XML 데이터를 읽는 동안 최대 배열 길이 할당량 (16384)이 초과되었습니다. 이 할당량은 XML 리더를 만들 때 사용되는 XmlDictionaryReaderQuotas 객체에서 maxArrayLength 속성을 변경함으로써 증가 될 수 있습니다.

클라이언트 측에서 ReaderQuotas를 바인딩을 설정하고 문제가 서버 측에 올바르게 표시되도록 올바르게 선택하는 것으로 보입니다. 일반적으로 Web.config에서 웹 서비스의 바인딩 설정을 추가하지만 ServiceStack을 위해이 작업을 수행하는 방법을 확신하지 못합니다.

문제가 발생하는 서비스가있는 경우입니다.

SOAP1.2 웹 서비스로 많은 양의 데이터를 보내는 방법은 어떻게됩니까? (불행히도 바이트 배열을 사용함으로써)

도움이 되었습니까?

해결책

@cvbarros 값을 응용 프로그램 초기화 코드에서 지정할 수 있습니다.

DataContractSerializer.Instance = new DataContractSerializer(new XmlDictionaryReaderQuotas
{  
    MaxStringContentLength = /* new value */; 
};
.
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top