【问题标题】:How closely is Entity Framework tied to WCF RIA Services?实体框架与 WCF RIA 服务的关联程度如何?
【发布时间】:2010-07-27 19:06:52
【问题描述】:

我正在尝试在 Silverlight 中构建一个简单的概念验证“业务应用程序”,并且在尝试将数据输入和输出数据库时遇到了困难。我目前正在尝试学习 WCF RIA 服务,但我被困住了,因为我无法让 Entity Framework 使用我的数据库中的现有表(即使我通过添加它们,它们也不会出现在模型设计器中向导)。

我仍然想使用 RIA 服务(我想),但我不知道在此过程中放弃 EF 会损失多少。它们之间的联系有多紧密?

【问题讨论】:

    标签: .net silverlight entity-framework ado.net wcf-ria-services


    【解决方案1】:

    用于添加新域服务的 WCF RIA 服务向导需要支持 DataContext 或 ObjectContext 的提供程序。 EntityFramework、Linq2sql 和 NHibernate 属于这两个类别之一。

    但是,如果愿意,您可以在不使用向导的情况下随意实现 DataService。

    我会首先关注 EF 问题(支持 sql2005),因为向导使该过程非常容易学习。

    【讨论】:

    • 一旦我发现了 EF 的问题,其他一切都非常顺利。感谢您关注这一点的建议。
    【解决方案2】:

    后端可以是您想要的任何东西。如果 EF 不适用,那么 Linq to SQL 是可行的替代方案。我相信甚至为您提供了“添加...”模板。

    【讨论】:

      【解决方案3】:

      如果 EF 给您带来问题,我相信您仍然可以将 LINQ-to-SQL 与 RIA 服务一起使用。

      对于 RIA,真正重要的是您提供了一个扩展正确类的域服务(我不记得是什么类)。 EF 很好,因为有一个用于 EF 模型的域服务模板,但是您应该能够从 LINQ-to-SQL 模型生成相同的模板。

      【讨论】:

        【解决方案4】:

        所有 WCF RIA 服务都需要一个 IQueryable 提供程序 - 如果您真的非常想写,您可以自己编写 :-)

        WCF RIA 服务既不依赖于实体框架,也不依赖于 Linq-to-SQL(尽管这两个提供“开箱即用”的 IQueryable 提供程序,因此它们可能是您的首选)。

        【讨论】:

          【解决方案5】:

          正如 Marc 所说,您不仅限于 EF 或 Linq to SQL - 这是 RIA 服务和实体框架中的一个演示示例,用于将 EF 替换为 NHibernate 用于持久层:http://blogs.msdn.com/b/brada/archive/2009/08/06/business-apps-example-for-silverlight-3-rtm-and-net-ria-services-july-update-part-nhibernate.aspx

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2010-12-20
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-09-02
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多