【问题标题】:Incorrect generating of service reference服务参考生成不正确
【发布时间】:2015-01-29 09:53:35
【问题描述】:

我有类Request 派生自Dictionary<string, string>。它有额外的字段。 然后我有服务合同:string MakeRequest(Request request); 之后,我为此合同生成服务参考。但是 VS 出于某种原因生成了下一个代码:

string MakeRequest(System.Collections.Generic.Dictionary<string, string> request);

我的问题是如何告诉 VS 我想要派生类而不是基类。

【问题讨论】:

标签: c# wcf servicecontract


【解决方案1】:

我怀疑这是可能的。 Dictionary 支持似乎是内在的。 Dictionary 不是 SOAP 理解的类型,因此不能按字面意思序列化。例如,它没有[DataContract] 属性。无法序列化派生类型(可能带有自定义字段)。

无论如何,从Dictionary 派生是一个坏主意。您可能应该从IDictionary 派生并包装一个将其作为属性公开的字典:

class MyDict { public Dictionary<...> Items; }

【讨论】:

    猜你喜欢
    • 2011-07-26
    • 2014-06-21
    • 2011-01-23
    • 2015-01-29
    • 1970-01-01
    • 2010-11-15
    • 2013-07-03
    • 2013-03-08
    • 1970-01-01
    相关资源
    最近更新 更多