我想念。网络远程处理时代,我可以通过网络发送一个对象,它可以在中间层的两侧工作,而不需要做太多工作。原因如下:
我被分配了一项任务。我正在构建一个逻辑/数据抽象层(愚蠢的PCI合规性),这样我们就可以将数据库服务器从公司网络转移到受保护的网络中。我曾经做过这样的项目。带远程处理的Net 2.0。我在中间件层构建了对象,并将该对象发送到客户端,客户端拥有我的。要使用的网络对象。但是WCF需要序列化才能在管道中上下发送内容,序列化剥夺了我对现有字段做不可思议的事情的花哨方法。
我提出了两种不同的策略来解决这个问题:(1)将方法从类本身移动到静态实用程序类;(2)在客户端“反序列化”数据,并用序列化对象中的数据重建本机对象。
nativeObject.Name = serializedObject.Name;
第二种方法的缺陷是,我必须重新序列化对象,然后才能将其发送回中间件层。
serializedObject.Name = nativeObject.Name;
这两种方法都有效,但由于中间层造成的整个序列化混乱,编写对象所需的时间比预期的要长得多。我会回去的。Net Remoting,但架构师表示,他希望在WCF中完成这个抽象层,因为(我的话,不是他的)它新颖而性感。
那么,如何着手工作呢。WCF连接两侧的网络本机对象。..无需编写1000行胶水代码。