我在类库项目中定义了以下类型.
[CollectionDataContract()]
public class OperationException:System.Collections.Generic.Dictionary<string,ExceptionData>
{
[DataMember()]
public bool ExceptionExists { get; set; }
}
[DataContract()]
public class ExceptionData {[DataMember()] public string Msg;}
Run Code Online (Sandbox Code Playgroud)
在我的WCF服务端,我返回一个包含上述类的对象作为这样的子成员变量.
[DataContract()]
public class SaveClient
{
[DataMember()]
public string Id;
[DataMember()]
public OperationException ExceptionCollection;
}
Run Code Online (Sandbox Code Playgroud)
我在客户端引用了OperationException类库.问题是当我使用Add Service Reference生成代理时,会生成类型字典的OperationException的新定义.我确实将"重用类型"选项设置为true.我喜欢使用实际的'OperationException'类型,因为我必须将此对象传递给其他方法.
提前致谢..!
伊夫蒂哈尔.
您的客户端代理程序集是否具有对添加类型的类库的项目引用?
如果 svcutil 生成的代理不是您想要的,手动编写它们也很容易。只需创建您自己的 ClientBase 派生类并在其上实现您的服务接口即可。然后您就可以控制要重用的程序集类型。
| 归档时间: |
|
| 查看次数: |
1187 次 |
| 最近记录: |