WPF中的MaxArrayLength异常

时间:2011-06-06 20:25:50

标签: c# wpf wcf app-config

我正在开发一个项目,它是一个网站,一个移动应用程序和一个桌面WPF应用程序,它们都依赖于服务。移动应用程序运行正常,但由于MaxArrayLength属性,桌面和网站在从数据库获取图像时遇到问题。我们能够更改web.config文件的maxArrayLength属性,网站现在可以正常工作,但桌面应用程序仍然坏了。我们知道我们应该在App.config文件中更改一些内容,但无法弄清楚maxArrayLength属性应该在哪里(它下面有什么标记等)。

我们目前通过桌面直接引用该服务,并通过该网站提供服务参考。有没有办法在不添加服务引用的情况下执行此操作,只是能够保持对服务的直接引用?

1 个答案:

答案 0 :(得分:1)

  

没有任何方法可以做到这一点   添加服务引用并且只是   能够保持直接   参考服务?

你为什么要那样做?

如果您直接引用WCF项目,只需点击一些包含的业务逻辑,您的解决方案可能需要一些项目重构。也就是说,你应该在一个单独的项目中拥有所有客户使用的业务逻辑,以保持高凝聚力。

如果你需要调用WCF服务来实际访问提供的服务(而不仅仅是调用公开的业务逻辑,你可能正在做什么,如果我的理解是正确的),那么你很可能会想要选择其中一个选项:

选项A

使用服务引用(而不是项目引用)以通过自动生成的代理调用WCF服务。

选项B

使用工具(具有一些配置)和IoC容器来解析对WCF服务的依赖性。有关如何入门的一些线索,请参阅this article。此示例使用Castle's非常简单的WCF Integration Facility