我们有一个指向WCF服务的服务引用,它充当我们的模型层的代理,我们的数据访问逻辑正在处理中。在引擎盖下,我们使用Linq2Sql作为ORM来促进数据库通信。控制通过服务引用序列化的属性
我们使用生成的类作为我们的数据访问层,但返回的实际上是愚蠢的DTOs对象,它们不过是POCO。我想做两件事)
1)根据自定义类型及其相关属性,通过服务引用来控制客户端上可用的内容。这是为了减少课程的规模。
2)我知道Linq2Sql实际上是装饰所有生成的类,但我不希望这些类通过服务引用传出。
目前,如果我们使用该类作为输入参数的返回类型,它将被序列化。这很好,除了我想限制哪些属性可用
想法?
不棘手 - 记录! :-)这就是为什么我主张**总是**在你的DTO上明确使用[DataContract]和[DataMember]。这样做的前提是要做更多的工作,但是你明确而清楚地知道序列化的内容(以及被跳过的内容)。这种额外的工作将在维修模式中得到回报 - 很多次! – 2010-03-04 07:53:13
我同意,我只是没有意识到,实际上来回答,因为我要去的文档:)有趣的是如何工作。就像哈尔说的那样,我们生成的类被抽象出来,从不用作返回值。 – xximjasonxx 2010-03-04 14:07:28