无法使用相当长的参数列表来调用WCF服务

我在大多数情况下都使用WCF。

当我尝试用超过一定数量(如20)的列表中的对象(不是太复杂的对象)作为参数调用它时,它似乎甚至无法到达该服务。我处于调试模式,它甚至不启动服务执行。

我认为这是因为 MaxArrayLength 和其他服务配置,但我已经尝试了一切和任何改变。您可以在图片中看到我的服务配置。

enter image description here

你有什么建议吗?我应该更改我的客户端配置中的任何内容

提前致谢!!

0
额外 编辑
意见: 1
好吧...我还没有尝试过@mellamokb,如果你发送一个包含20个字符串或20个字符串列表的对象,你认为这很重要吗?在里面搜索会很困难,但如果可以改变,我可以尝试;)
额外 作者 zapico,
是@ThomasCalc,与少于20个的对象完美协作,但它在更大的测试中崩溃(40,50 ...)。我不知道停止工作的确切位置......
额外 作者 zapico,
哦,我的上帝,忘了看看小提琴!谢谢@SliverNinja我会看看并告诉你发生了什么事情(现在我不在工作......)
额外 作者 zapico,
你能否确认它可以用较少的对象工作(例如<20),并且在你的代码中没有任何其他更改,没有更多工作,在两次测试之间,你可能已经改变了其他的东西。只想确认一下。 (就其本身而言,特别是如果对象在序列化大小上是同质的,那么假设的问题原因听起来不太可能。)
额外 作者 Thomas Calc,
“它似乎甚至不能达到服务” - 你可以小提琴,看看实际的错误是什么?
额外 作者 SliverNinja - MSFT,
你可以将所有参数组合成一个单一的对象吗?
额外 作者 mellamokb,
可能值得在事件查看器中快速浏览一下,以防万一有任何东西在那里登录,这会给你一个快速的线索。
额外 作者 razlebe,

1 答案

对于 DataContractSerializer ,您可能没有为 maxItemsInObjectGraph 设置更高的值。


http://msdn.microsoft.com/zh-cn/ -us /库/ system.runtime.serialization.datacontractserializer.maxitemsinobjectgraph.aspx

0
额外
我认为这将是一个像其他设置较低的价值。感谢指出:)
额外 作者 VJAI,
顺便说一下,我提到这个主题 stackoverflow.com/questions/3058202/…
额外 作者 VJAI,
默认值是相当大
额外 作者 razlebe,
您可能是对的--OP可能已经将该值配置为比默认值低得多的值。
额外 作者 razlebe,