Wcf 在客户端未初始化的DataContract类
我想从我的Wcf 在客户端未初始化的DataContract类,wcf,datacontract,Wcf,Datacontract,我想从我的WCF(C)服务向我的客户(WPF)发送以下类: 服务使用它的方式如下: var channel = OperationContext.Current.GetCallbackChannel<IClientCallback>(); channel.OutputAvailable(new OutputAvailableEventArgs(1, false, "some message")); var channel=OperationContext.Current.GetC
WCF
(C
)服务向我的客户(WPF
)发送以下类:
服务使用它的方式如下:
var channel = OperationContext.Current.GetCallbackChannel<IClientCallback>();
channel.OutputAvailable(new OutputAvailableEventArgs(1, false, "some message"));
var channel=OperationContext.Current.GetCallbackChannel();
channel.OutputAvailable(新的OutputAvailableEventArgs(1,false,“某些消息”);
在客户端,成员获得其默认值。我试着用
IsRequired
属性标记它们,但是现在没有调用客户端的OutputAvailable
。服务端的代码似乎运行顺利(我没有注意到调试器有任何问题)
如何使用WCF
传输DataContract
类,同时维护成员的值?(我看到了建议使用
OnSerialized
和OnSerialized
的解决方案,但我不需要一个默认构造函数。)我看到了许多不同的解决方案。为了其他人的缘故,我会写下他们中的一些人+对我有用的东西:
OnSerialized
和OnSerialized
方法调用初始化方法DataMember
s上使用IsRequired
属性,但仍然没有获取我的对象对我有效的是
DataContract
属性。显然,为了使契约被认为是平等的,必须将DataContract上的Namespace属性设置为双方相同的值 若可能,使用fiddler查看服务返回的内容以及客户端在消息中接收到的内容。
var channel = OperationContext.Current.GetCallbackChannel<IClientCallback>();
channel.OutputAvailable(new OutputAvailableEventArgs(1, false, "some message"));