gpt4 book ai didi

c# - 上传超过 16kb 的图片 vs2010 c# asp.net

转载 作者:太空宇宙 更新时间:2023-11-03 16:41:58 24 4
gpt4 key购买 nike

我想上传大图片(超过16kb)到数据库。(小图片我成功了)我已经在它找到的所有地方将 MaxArrayLength 更改为 2147483647(默认情况下为 16384)。但调试后我仍然收到此错误消息:

格式化程序在尝试反序列化消息时抛出异常:尝试反序列化参数时出错 http://tempuri.org/:PicToAdd . InnerException 消息是“反序列化 BL.BE.Picture 类型的对象时出错”。读取 XML 数据时已超出最大数组长度配额 (16384)。可以通过更改创建 XML 阅读器时使用的 XmlDictionaryReaderQuotas 对象的 MaxArrayLength 属性来增加此配额。第 1 行,位置 41545.'。有关更多详细信息,请参阅 InnerException源代码:

Line 218:        public string BLS_AddPicture(BL.BE.Picture PicToAdd) {
Line 219: **return base.Channel.BLS_AddPicture(PicToAdd);**
Line 220: }

我该怎么做才能尽快修复它!!!谢谢

最佳答案

您必须更改 WCF 配置中的设置 XmlDictionaryReaderQuotas.MaxArrayLength。

你可以在配置文件中做:

<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding ...>
<readerQuotas maxDepth="32"
maxStringContentLength="8192"
maxArrayLength="16384"
maxBytesPerRead="4096"
maxNameTableCharCount="16384" />

或在代码中:

XmlDictionaryReaderQuotas lOQuotas = new XmlDictionaryReaderQuotas()
{
MaxArrayLength = Int32.MaxValue,
MaxBytesPerRead = Int32.MaxValue,
MaxDepth = Int32.MaxValue,
MaxNameTableCharCount = Int32.MaxValue,
MaxStringContentLength = Int32.MaxValue
};

myBinding.ReaderQuotas = lOQuotas;

关于c# - 上传超过 16kb 的图片 vs2010 c# asp.net,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7229924/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com