C# 是否应该使用Linq?
我正在设计我的项目架构。 在我们的团队中,就是否使用Linq展开了辩论 我在谷歌上浏览了关于linq的内容,我发现了这一点,它简要说明了linq的优点和缺点 从我们项目的角度来看,有3个关键点C# 是否应该使用Linq?,c#,.net,linq,architecture,linq-to-entities,C#,.net,Linq,Architecture,Linq To Entities,我正在设计我的项目架构。 在我们的团队中,就是否使用Linq展开了辩论 我在谷歌上浏览了关于linq的内容,我发现了这一点,它简要说明了linq的优点和缺点 从我们项目的角度来看,有3个关键点 DBML并发问题 小数据集构建查询所需的时间比执行查询所需的时间更长 连接非常慢 我说的是Linq到实体。所有这些都是与Linq相关的问题,根据我的项目要求,这些问题非常关键,因为我的项目非常大。 因此,性能是非常重要的关键因素 我们能解决这些linq问题吗?如果是,如何解决 我通读了那篇文章中的一些回复
我们能解决这些linq问题吗?如果是,如何解决 我通读了那篇文章中的一些回复,其中很多我都同意也不同意。我发现使用linq最重要的因素是开发时间的快速周转。SQL查询中不再出现拼写错误。不浪费时间创建复杂的SQL查询。LINQtoEntities和LINQtoSQL也有区别。你没有考虑过。我建议你仔细阅读一下。提示:转到linq to实体 回答你的问题
和往常一样,答案是这要看情况而定。现在的方向是肯定的。虽然使用存储过程或直接sql命令可以更好地控制性能和原子记录更新,但以我个人的经验,这些好处被维护/更新架构和过程所花费的时间所抵消。对于敏捷团队来说,这可能是一个巨大的减速。使用Entity Framework或N-Hibernate等强类型ORM工具的另一个关键好处是,可以防止代码与数据库模式和存储过程严重偏离。这可能会导致一些非常大的问题 通常,我会在使用ORM工具时出错,然后在必要时使用存储过程 要回答您的具体问题,请使用实体框架作为具体示例:
我在EntityFramework中看到的一个缺点是,有时在使用Postgres时会出现问题,但有非Visual Studio工具可以提供帮助。太模糊了。问一个具体的技术问题。@OliverBock其中有什么含糊不清的地方??你不明白什么?你打算用linq转换xml吗?linq到sql?linq到对象?在做出明智的决定之前,有很多因素需要考虑。Linq本身可以用于执行各种各样的操作。对于一个基于理论的项目,我们不能给出一个一般性的建议。@ryadavilli计划使用Linq到sqlIf性能实际上是一个重要因素。如果使用Linq是有用的,您可以尝试几种方法并自己找到答案。就目前而言,这个问题无法回答——任何问题都可以解决,但没有人能够判断某些特定技术是否适合您的项目。