存储通过wcf传输的类

时间:2012-08-01 11:22:56

标签: c# wcf design-patterns proxy svcutil.exe

当我使用svcutil或其他代理生成器时,它会在客户端中创建适当的类。我想知道存储这些类以避免冲突的最佳方法是什么。

  • 在其他一些“Common”项目中,从代理中删除生成的类?
  • 或者只是在服务中使用原始类,并且在代理中重复使用?

1 个答案:

答案 0 :(得分:3)

有两种方法可以处理服务和数据协定类WCF客户端的代码。

  • 使用svcutil.exe生成所有内容。不要从客户端项目到服务程序集的任何引用。只需使用svcutil生成的类。
  • 直接引用包含类型的程序集。我有时会为我的DTO类使用单独的程序集,即来自客户端和服务器的引用。使用svcutil生成客户端代码时,使用/reference:<file path>选项告诉svcutil重用现有程序集中的类型而不是重新生成它们。

如果您引用原始程序集,而不将/reference传递给svcutil,则最终会出现一堆冲突。我想这就是发生在你身上的事。