gpt4 book ai didi

.net - SlSvcUtil.exe 不重用数据协定类型的常见原因

转载 作者:行者123 更新时间:2023-12-02 02:26:19 25 4
gpt4 key购买 nike

我有一个被 Silverlight 和 .NET 客户端使用的 WCF Web 服务。为了与两个客户端共享数据契约类型,契约在两个类库中定义:一个是 Silverlight,一个是 .NET。定义数据契约类型的文件通过链接在两个库项目之间共享。

使用服务的代理的生成非常适用于 .NET。具体来说,我的 .NET 类库中的数据协定类型按预期重用。

但是,通过 SlSvcUtil.exe 生成的 Silverlight 代理不会重用数据协定类型。无论我是使用/r 开关从命令行调用 SlSvcUtil.exe 还是使用 Visual Studio 中的“添加服务引用”对话框,都是如此。

通过反复试验,我确定单一服务方法中使用的单一类型是此问题的根源。如果服务停止使用此类型,SlSvcUtil.exe 会按预期生成代理(使用从数据协定程序集中重用的类型)。

既然我已经将问题缩小到这种类型,我不确定接下来要寻找什么。该类型确实包含一个实现 IXmlSerializalble 的成员。这会导致这种行为吗?这有哪些常见原因?进一步排除故障的一些好方法是什么?

最佳答案

我敢肯定您早就离开了这里,但今天早上我遇到了类似的问题 - 我有一个没有默认构造函数的类型。添加一个后,神秘类型在运行 SlSvcUtil 时消失了。但是,为什么它可以与 SvcUtil 一起正常工作超出了我的范围。希望这对您有所帮助!

关于.net - SlSvcUtil.exe 不重用数据协定类型的常见原因,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5826401/

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