我很想知道为什么数据库人员应该学习LINQ。它怎么会有用呢。
答案 0 :(得分:5)
LINQ与大多数其他数据访问方法相比具有一大优势:它以'查询表达式'隐喻为中心,这意味着查询可以像对象一样传递并被修改和修改,所有 之前执行(迭代)。在实践中,这意味着代码可以是模块化的并且更好地隔离。数据访问存储库将返回'orders'查询,然后请求处理管道中的中间过滤器将使用过滤器装饰此查询,然后将其传递给添加排序和分页等的显示模块。最后,当它的迭代,表达式已完全转换为非常具体的SELECT ... WHERE ... ORDER BY ... LIMIT ...
(或其他后端特定的分页,如ROW_NUMBER)。对于应用程序开发人员来说,这是无价的,根本没有任何可行的选择。这就是为什么我相信LINQ会留在这里并且不会在2年内消失。这绝对不仅仅是一种时尚。我特别指的是LINQ作为数据库访问方法。
单独操作查询表达式对象的优势足以使LINQ成为中标。再加上它可以操作的多种容器类型(XML,数组和集合,对象,SQL)以及它在所有这些不同技术上公开的统一接口,考虑到.Net 4.0中的并行处理更改,我相信它会是透明地集成到数组和集合的LINQ处理中,LINQ真的不会消失。当然,今天它有时会产生难以理解,性能不佳和不可判断的SQL,并且是每一个专门的DBA噩梦。它会变得更好。
答案 1 :(得分:4)
Linq提供对您数据的“一流”访问权限。这意味着您的查询现在是编程语言的一部分。
Linq提供了一种访问各种数据对象的常用方法。例如,用于访问数据库查询的相同语法也可用于访问列表,数组和XML文件。
学习Linq将为您提供对编程语言的更深入理解。 Linq是各种语言创新的驱动因素,例如扩展方法,匿名类型,lambda表达式,表达式树,类型推断和对象初始化器。
答案 2 :(得分:2)
我认为更好的问题是为什么在查询数据库时会用LINQ替换SQL?
答案 3 :(得分:1)
“了解你的敌人”?
OTOH,出于兴趣。我正在学习更多有关XMl,XSLT,XSD等的知识,因为我可以看到它们作为数据库开发人员的用途。答案 4 :(得分:0)
这是一个真正的问题吗?无法使用代码段来回答它。大多数讨论类型的问题很快就会被关闭。
答案 5 :(得分:0)
我认为人们可以考虑使用linq的原因之一是因为linq可以提高生产力并节省大量时间
答案 6 :(得分:0)
这个问题也促使我问,如果LINQ变得非常流行,服务器端开发人员会不会知道SQL以及他们的前辈呢?