Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/272.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我们是否总能编写一个包含许多连接和复杂SQL语句的LINQ查询(相当于复杂的T-SQL查询)?_C#_Linq_Tsql_C# 4.0_Ado.net - Fatal编程技术网

C# 我们是否总能编写一个包含许多连接和复杂SQL语句的LINQ查询(相当于复杂的T-SQL查询)?

C# 我们是否总能编写一个包含许多连接和复杂SQL语句的LINQ查询(相当于复杂的T-SQL查询)?,c#,linq,tsql,c#-4.0,ado.net,C#,Linq,Tsql,C# 4.0,Ado.net,从C#访问SQL数据库的最新技术是Linq。在我们将ADO.NET用于T-SQL查询之前。我的问题是:我们能否始终为任何复杂的T-SQL语句(包含许多连接和语句的复杂大型查询)构建等效的Linq查询 对于大型复杂的查询构建,我们还需要使用旧的ADO.NET访问吗?不,您不能也不应该使用LINQ来完成SQL所能做的一切。例如,PIVOT、UNPIVOT分组、汇总、多维数据集。另外,请让复杂的查询编写由专门用于此目的的工具(SQLServer中的复杂sql查询)处理。这样,您的代码和数据库也将保持可

从C#访问SQL数据库的最新技术是Linq。在我们将ADO.NET用于T-SQL查询之前。我的问题是:我们能否始终为任何复杂的T-SQL语句(包含许多连接和语句的复杂大型查询)构建等效的Linq查询


对于大型复杂的查询构建,我们还需要使用旧的ADO.NET访问吗?

不,您不能也不应该使用LINQ来完成SQL所能做的一切。例如,PIVOT、UNPIVOT分组、汇总、多维数据集。另外,请让复杂的查询编写由专门用于此目的的工具(SQLServer中的复杂sql查询)处理。这样,您的代码和数据库也将保持可维护性。

据我所知,Ling查询仍然是ADO.NET的幕后黑手。在此基础上,使用Linq在顶部添加了额外的处理层。Linq不是关于性能,而是关于抽象!