添加了带有重用类型选项的服务引用的空reference.cs文件

时间:2011-06-14 10:57:37

标签: c# wcf self-tracking-entities

方案

  • Visual Studio 2010
  • Silverlight 4
  • 实体框架
  • 自我跟踪实体

问题

在服务器端,我们使用Entity Framework模型生成了实体对象。我们使用自我跟踪T4模板来生成实体。这些实体是共享的,可以从客户端使用(Silverlight 4项目)。

但是当我们尝试添加新的Web服务引用时,代理生成器不起作用。 reference.cs文件为空。我们在Web Reference的配置中检查了“Reuse Types”选项。我们已经检查了将要共享的程序集(仅限实体程序集)。

我们尝试从实体的DataContract属性中删除每个(IsReference = true),但它不起作用。

任何想法或解决方法?

3 个答案:

答案 0 :(得分:15)

取消选中“重用类型”对我有用。代码生成器遍历依赖项的对象图,如果它遇到任何问题,比如找不到引用,那么它会爆炸并且不会在reference.cs中生成任何代码。

答案 1 :(得分:2)

当您尝试共享的程序集是针对更高版本的.NET平台编译时,可能会发生这种情况。

例如,如果您的项目针对.NET 3.5并且程序集是针对4.0编译的,则会发生这种情况。

答案 2 :(得分:0)

您已选中Reuse Types选项?请尝试取消选中Reuse Types

选项