希望在我的下一个项目中使用linq来缓解一些艰苦的劳动.在此之前,我深入探讨了linq世界,我想就使用linq的最佳方案提出一些建议.我仍然未决定EF和linq到sql
首先,您需要定义"LINQ"的含义.我将问你关于Linq to SQL的其他问题.
如果您的意思是Linq to SQL,并且您正在开始一个新项目,我会说第一个最佳实践是不要这样做,并使用.NET中的实体框架.它远远优于EF 1.0以及Linq to SQL.自从Visual Studio 2010和.NET 4发布以来,所有新项目都应避免使用Linq to SQL .
我能给你的最大的最佳实践是正确的数据库模型.正确地规范化您的数据库.正确调整和索引数据库.从正确创建的数据库构建EF模型,您会很高兴.如果你试图偷工减料,或者你以某种方式将数据库建模为某种非关系对象存储,那么你的生活就会充满痛苦和痛苦.
确保团队中的每个人都了解延迟执行的概念以及与实际生成和执行查询的方式有何关联.
理解IQueryable <>和IEnumerable <>之间的区别.这与前一点有关,但在编写Linq查询时,理解IQueryable <>的工作方式可以让您的生活更轻松.
了解延迟加载以及它将如何影响查询的性能.在适当的时候使用它,并学习如何战略性地加载对象以获得最佳性能.
了解每个查询的频率以及对加载的影响.一些最高频率的查询通常可以通过编译获益,但大多数情况下您不需要这样做.