.net 如何跨程序集将元数据与类定义分离?

.net 如何跨程序集将元数据与类定义分离?,.net,vb.net,entity-framework,metadata,.net,Vb.net,Entity Framework,Metadata,我正在处理一个业务层(单独的程序集),它将包含多个客户端应用程序中使用的各种业务实体。其中一个客户端应用程序是需要序列化这些实体的WCF应用程序。为了正确地序列化实体,必须添加数据协定或XML序列化的元数据,但序列化要求可能因应用程序而异 显然,我需要将元数据与类定义分开。那么,如何为每个单独的应用程序向实体添加元数据呢?在讨论WCF时,您实际上是在谈论DTO。如果说序列化是不同的,那么它就不是相同的DTO,因为DTO的全部目的是允许适当的序列化,这是一个公平的论点。所以我的答案是:拥有多个代表

我正在处理一个业务层(单独的程序集),它将包含多个客户端应用程序中使用的各种业务实体。其中一个客户端应用程序是需要序列化这些实体的WCF应用程序。为了正确地序列化实体,必须添加数据协定或XML序列化的元数据,但序列化要求可能因应用程序而异


显然,我需要将元数据与类定义分开。那么,如何为每个单独的应用程序向实体添加元数据呢?

在讨论WCF时,您实际上是在谈论DTO。如果说序列化是不同的,那么它就不是相同的DTO,因为DTO的全部目的是允许适当的序列化,这是一个公平的论点。所以我的答案是:拥有多个代表不同API需求的并行DTO类,并在它们之间进行转换


通过在runine中指定序列化程序,您可能可以发挥一些神奇的作用,但这更脆弱,更难配置。

因此,您可以从业务层获取业务实体,然后将其转换为适当的DTO?@Sean如果我需要支持具有不同布局的多个不同API,是的