我们正在开始研究新的企业应用程序,目前正在考虑技术堆栈。
这将是.Net / SQL Server,因为这是我们都知道的。
应用程序将针对不同的平台(例如Web,桌面WPF,移动设备)使用不同的UI,因此我们正在考虑创建WCF服务以容纳我们的业务/数据逻辑,以便每个UI可以调用相同的逻辑。
我们还希望使用Entity Framework Code First,但在过去我们尝试过时,当您开始跨越边界传递实体时,EntityFramework从未如此出色,例如,更改跟踪会丢失,您必须手动设置如何更新实体并检查哪些子实体也已更改。
在较新版本的WCF / EntityFramework中是否解决了这些问题?是否有任何我们可以看到的示例或模式来简化此过程?或者我们应该在这种情况下避免使用EntityFramework吗?
答案 0 :(得分:0)
在较新版本的版本中解决了这些问题 WCF /的EntityFramework?有没有我们可以看到的例子或模式 在缓解这个过程?或者我们应该避免使用EntityFramework 方案
不,他们没有。如果您不使用EF并且您将直接使用WCF和SQL,您的WCF将如何知道客户端上的数据已更改?是的,您必须通过在数据中传递一些附加信息或通过检查数据库中的当前状态来实现机制。如果您不将此更改检测移动到客户端,则需要使用相同的方法。
如果您对将更改检测移至客户端感到满意,并且您的服务层更像是使用WCF数据服务的数据网关 - 它们将为您处理跨边界的更改跟踪,但您的客户端应用程序必须使用生成的WCF数据服务客户端。