gpt4 book ai didi

c# - 不再推荐 self 跟踪实体。什么是?

转载 作者:太空狗 更新时间:2023-10-29 23:33:05 24 4
gpt4 key购买 nike

阅读有关 EF 5.0 和 n 层解决方案的 msdn 信息 see link ,似乎MS不推荐STE,POCO/DTO方式也不推荐,说很难。

并非所有(也许不是很多?)应用程序都适合使用 WCF 数据服务。那么要走的路是什么?我的场景是当前的大型服务器 (WebServices) 应用程序,其中包含许多客户端(只有我们自己的),主要是 WinForms。如今,DataSet 用于将数据发送到 SQL Server 数据库并跟踪更改。

我们现在开始用 WCF 替换 WebServices,并且还在考虑使用 Entity Framework。我们不需要代码优先或迁移,因为我们已经有了数据库和许多将被重用的存储过程。由于我们对客户不是我们自己的客户没有任何问题,STE 似乎是一个不错的选择,但我们不想开始使用 EF 团队显然不再推荐的东西。 POCO/DTO 也是一种替代方案,尤其是为了与客户明确分离。我知道关于 CUD 还有更多工作要做,但建议是远离它是如此困难,那么我不知道我们是否要走那条路。

然后,根据建议,我们应该使用 WCF 数据服务或 Web API,但这对于需要在协议(protocol)/格式等方面具有灵 active 的基于操作的服务来说确实不是替代方案。

所以我的问题是,当今的最佳实践是什么?

最佳答案

我认为这个想法是更普遍地转向更轻量级的 pocos/dtos,并在您的 DAL 中保留所有持久性逻辑或实现。 self 跟踪实体有点流血了一些实现并增加了你的实体。您获得了便利,但灵 active 不够,因为愚蠢的 dto 可以轻松传递,几乎没有意外。

当然,另一方面是您需要在 dal 中做更多工作来跟踪上下文,并且您需要在 BLL 和 UI 中做更多工作来处理填充/映射 dto。

我个人更喜欢灵 active 而不是方便,这似乎是事情的总体发展方式。

关于c# - 不再推荐 self 跟踪实体。什么是?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12456905/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com