c# - ServiceStack:读取 XML 数据时已超出最大数组长度配额 (16384)

标签 c# servicestack soap1.2

我设置了 ServiceStack 来为我的 MVC 4 网站提供网络服务。我只会将 Soap1.2 与 Web 服务一起使用,到目前为止它运行良好。

除非我尝试发送一个太大的字节数组,然后我收到以下错误:

The maximum array length quota (16384) has been exceeded while reading XML data. This quota may be increased by changing the MaxArrayLength property on the XmlDictionaryReaderQuotas object used when creating the XML reader.

在客户端,我为绑定(bind)设置了 readerQuotas,它似乎正确地提取了它,所以问题看起来出在服务器端。通常人们会在 web.config 中添加 Web 服务的绑定(bind)设置,但我不确定如何为 ServiceStack 执行此操作。

也就是说,如果是 ServiceStack 导致了问题。

我如何将大量数据发送到使用 ServiceStack 创建的 Soap1.2 Web 服务? (不幸的是,通过使用字节数组)

最佳答案

@cvbarros 所述该值可以在应用程序初始化代码中指定:

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

关于c# - ServiceStack:读取 XML 数据时已超出最大数组长度配额 (16384),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22042095/

相关文章:

servicestack - 如何配置客户端以使用 authsecret 访问?

java - 如何识别 soap Request 是 SOAP 1.1 还是 SOAP 1.2

c# - 本地网络上的自托管 ServiceStack REST 服务

c# - ServiceStack 将身份验证放入 Razor View

android - 传递soap对象(soap1.2)android时无法从HttpResponse获取响应?

c# - 如何在网络位置写入 .csv 文件?

c# - 获取没有反射或已知类型的程序集引用

c# - 如何在不使用指针的情况下模拟指针?

c# - 在没有静态 API 的情况下在应用程序启动时配置 AutoMapper v4.2