2012-04-30 36 views
1

你好朋友我正在WP7应用程序中,我正在浏览媒体库中的图像,获取它的Base64字符串,并将其发送到WCF服务上传到服务器,但我是无法发送长的Base64字符串到Web服务我得到以下错误:“格式化程序在尝试反序列化消息时抛出异常:反序列化操作'UploadFile'的请求消息正文中的错误。最大字符串内容长度配额(8192)在读取XML数据时已经超过这个限额,可以通过改变创建XML阅读器时使用的XmlDictionaryReaderQuotas对象的MaxStringContentLength属性来增加这个限额,第1行,位置23083。 请帮忙解决问题。发送Base64字符串WCF服务从WP7 App

+1

你见过这个吗? :http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/da9b5252-de00-498d-b6b7-d256de47b8c6/ –

+1

当我添加引用ServiceReferences.ClientConfig文件创建不具有标签支持,所以我无法设置这个标签。 – DharaPPatel

回答

1

这是服务器端应用程序中的配置问题。

您必须编辑web.config文件并更改绑定readerQuotas元素以增加max *值。

应该是这样的:

<readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" /> 
+1

它已经在我的WCF服务的Web.Config文件中设置,但当我发送长Base64string时,我也从我的WP7应用程序中获取错误 – DharaPPatel

1

不知道,这是否会work..but你可以尝试块(小于8192个字节)服务发送数据,然后在概括起来服务端重新生成文件。我的意思是使用逻辑来同步下载一个文件,这可能会有所帮助..不是一个WP家伙在这里,但似乎是一个可能的解决方案。

相关问题