【问题标题】:WPF and WCF RIA Service+EF or alternativesWPF 和 WCF RIA 服务+EF 或替代方案
【发布时间】:2012-09-11 09:06:59
【问题描述】:

有没有办法获得对 WPF 应用程序的 RIA Services+EF 的全面支持。我已经阅读了以前的主题,但似乎提供的解决方案缺少透明 CRUD 和验证 API 支持等基本功能。

或者是否有其他流行的通信框架/ORM 的替代解决方案支持该功能(总而言之 - 在 3 层环境中透明地使用 POCO 类)。

【问题讨论】:

  • WPF、WCF、RIA 服务太复杂了,无法完成更简单的任务。我认为是时候检查带有新 API 控制器的 asp.net mvc 了,它是简单的 JSON 端点,易于配置,可以轻松地坐在共享主机上,无需复杂的设置。我们离开了 WPF,因为 metro 不支持,我们接受 HTML+JS 作为统一的 UI,带有各种 JavaScript 框架。创建 JavaScript 桥接器来访问原生 API 更容易,就像 phone gap 所做的那样,这些库可以让您将静态 HTML 保留在您的应用程序中,并且只连接服务器以获取数据。
  • 我们的任务并不简单,应用程序已经相当庞大和复杂,我们只是在研究增加.NET层以加快某些功能的开发的可能性。顺便说一句,在做了一些管道之后,没有看到 WPF 或 WCF OData 有什么太复杂的东西,从长远来看,使用 HTML 恕我直言开发成熟的 UI 将需要更多的努力。
  • 长期?我们移出了 wpf 和 wcf,以简化应用程序并使应用程序可访问并在所有设备上运行,50% 的互联网用户不会也不能运行 wpf,没有平板电脑,包括微软自己的 win 8 arm 不会运行 wpf , 都不支持 wcf。无论如何,您和您的团队最好判断您的需求,我正在概述我们遇到的问题以及我们必须做的事情。

标签: wpf wcf entity-framework nhibernate orm


【解决方案1】:

您可能想尝试查看 WCF Data Services

本质上,它的作用是使用 OData REST API 在 WCF 服务上抽象 EntityFramework 的 DataContext。 Visual Studio 为您生成所有必要的管道,以便在您的客户端,您可以使用直接访问数据源时使用的相同 LINQ 查询远程访问您的数据层。

【讨论】:

  • 数据修改呢?据我了解 - WCF RIA 不仅关心透明访问数据,还关心透明数据修改,并且对于数据服务,您必须自己进行修改?
  • 不,我很确定 OData 支持所有 CRUD 操作,而不仅仅是读取访问。使用 WCF 数据服务,您只需调用 context.SaveChanges(),就像直接使用 EF 一样。
  • 是的,透明的 CRUD 确实有效。找到了回答剩余问题的好文章(如何使用 CodeFirst 和验证 API 工作)msdn.microsoft.com/en-us/magazine/hh580732.aspx。所以我会等几天看看是否有替代方案并分配赏金,谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多