接口类型作为类的属性在客户端WCF上引发错误
嗨,我有一个类,它有一个接口类型的属性接口类型作为类的属性在客户端WCF上引发错误,wcf,Wcf,嗨,我有一个类,它有一个接口类型的属性 public class A { public List<IInterface> interface {get;set;} } Public class B : IInterface { // Some properties } 公共A类 { 公共列表接口{get;set;} } 公共B类:接口 { //一些性质 } wcf服务正在调用OperationContract,该服务返回此对象的对象类型,但在我的客户端上失败 我已经在
public class A
{
public List<IInterface> interface {get;set;}
}
Public class B : IInterface
{
// Some properties
}
公共A类
{
公共列表接口{get;set;}
}
公共B类:接口
{
//一些性质
}
wcf服务正在调用OperationContract
,该服务返回此对象的对象类型,但在我的客户端上失败
我已经在服务契约上的所有实现类上添加了ServiceKnowType
属性,但仍然得到相同的错误
“考虑使用DataContractResolver
或将与“B”对应的类型添加到已知类型列表中-例如,使用KnownTypeAttribute
属性或将其添加到传递给DataContractSerializer
的已知类型列表中。”
我真的很困惑这将如何工作,请建议谢谢
我在正确的datacontract中添加了KnowTypeAttribute,所以上面的错误消失了,但是现在我得到了一个通用错误,underline connection God closed。
更新:此链接帮助我解决了接口问题 但是现在enums给了我一个类似的问题,我的对象在客户端中断,因为类中定义了enums属性。
对于枚举问题,是否对枚举使用EnumMember?有关示例,请参阅
如果这还不能解决问题,你能分享你在使用枚举时收到的错误消息吗?你能把你的代码发布在哪里以及如何定义
ServiceKnownTypeTrubute
?[ServiceContract][ServiceKnownType(typeof(B))]公共接口IIService{//some function}