![]() |
1
4
你有一个错误的印象-服务器公开的数据契约可以(而且应该) 只有 包含数据-从不包含任何行为。因此,你可以 从未 在客户机和主机之间共享一个对象—您所能共享的只是要调用的服务方法,以及在这些方法上使用的具体类型。就这样。 不能 推断数据契约上的任何其他方法。它就是不能。然后,客户机构建数据协定类型的精确副本—但它是一个完全独立的类,并且它只匹配服务器端数据协定类(就其在XML中的序列化表示而言)。它是 不 同一类-只是看起来一样。 -基本上是一个XML文本文档。你是 不 通过.NET对象发送!您所交换的只是数据契约的数据表示,仅此而已。
不
包含
在您的具体示例中,您似乎混合了[DataMember]和服务接口定义。不惜一切代价避免这种情况。另外,所有参与计算的类型-最肯定的是
|
![]() |
Ehsan Akbar · 当请求被激发时,WCF请求时间会增加 7 年前 |
![]() |
Gans · 具有多操作合约的WCF Rest服务 7 年前 |
![]() |
Moelgaard · NLog中的IIS应用程序名称。配置 7 年前 |
![]() |
Kerwen · WCF服务调用异步函数 7 年前 |