【问题标题】:Using Lightswitch with my own Domain object : missing reference将 Lightswitch 与我自己的域对象一起使用:缺少参考
【发布时间】:2011-07-14 07:05:49
【问题描述】:

我正在开发一个 asp.net 应用程序。我有一个域程序集(主要包含命令和查询代码)、一个 Domain.Contract 程序集(主要包含域对象)、一个存储库(由域调用)和网站。

对于某些特定的后台需求,我想创建一个 Lightswitch 应用程序。我想使用我当前的域作为数据源。我添加了一个 WCF Ria Service 类库,并在 RiaService.Web 项目中添加了一个基于 DomainService 的类,具有一个查询方法。仅此而已(没有实体,因为它们在我的 Domain.Contract 程序集中)

借助此处的帮助(感谢 Michael W),我能够添加数据源,并将我的域对象识别为灯开关中的实体。

但是,我现在有一个编译错误:“在全局命名空间中找不到类型或命名空间名称“MyDomain”(您是否缺少程序集引用?)”在项目 ServerGenerated 中。

具体错误在这一行: global::Domain.Contract.MyObject 结果 = 新的 global::Domain.Contract.MyObject(); 这是我的域对象(在我的 Domain.Contract 程序集中创建)。

所以,看来我唯一需要做的就是将引用 do Domain.contract 添加到 ServerGenerated 项目。

但它不会出现在 Visual Studio 中。添加我对 Server 项目的引用并不能修复错误。

谢谢。

【问题讨论】:

    标签: silverlight silverlight-4.0 reference visual-studio-lightswitch


    【解决方案1】:

    在您的解决方案资源管理器窗口中,选择 ServerGenerated 程序集并单击“显示所有文件”按钮。这将显示所有隐藏文件夹 - 包括为 WCF Ria 生成的客户端代码。

    如果没有生成代码,这意味着服务实现有问题(通常会出现编译错误)或服务有其他问题 - 例如缺少 [EnableClientAccess] 属性(我知道这是事实没有此属性的服务不会生成客户端代码)。

    要检查的其他事项是在宿主项目中包含服务器端 ria 程序集 + 在 .config 文件中正确配置 WCF ria(询问 google)。

    【讨论】:

    • 非常感谢!我只是希望ServerGenerated项目不要重新生成很多......
    【解决方案2】:

    在您的解决方案资源管理器窗口中,选择项目并单击“显示所有文件”按钮并选择“文件视图”(不是逻辑视图)。

    然后添加对项目“ServerGenerated”(不是服务器项目)的引用

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-10
      相关资源
      最近更新 更多