Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/73.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# LINQtoSQL不返回数据,但生成的SQL语句返回数据_C#_Sql_Linq To Sql_Ssms - Fatal编程技术网

C# LINQtoSQL不返回数据,但生成的SQL语句返回数据

C# LINQtoSQL不返回数据,但生成的SQL语句返回数据,c#,sql,linq-to-sql,ssms,C#,Sql,Linq To Sql,Ssms,我有一个LINQ到SQL查询,执行时不会返回任何数据。但是,在调试时,我可以获取生成的SQL查询,插入变量的值,然后在SQL Management Studio中运行它,以获得我期望的记录。我也在调试模式下获取变量的值 以前有人经历过类似的事情吗 根据要求,LINQ语句编辑了表和列名: var q1 = from rr in db.ABC from rd in db.DEF where rr.a == rd.b where rr.c == r

我有一个LINQ到SQL查询,执行时不会返回任何数据。但是,在调试时,我可以获取生成的SQL查询,插入变量的值,然后在SQL Management Studio中运行它,以获得我期望的记录。我也在调试模式下获取变量的值

以前有人经历过类似的事情吗

根据要求,LINQ语句编辑了表和列名:

var q1 = from rr in db.ABC
         from rd in db.DEF
         where rr.a == rd.b
         where rr.c == rd.c
         where rr.d.Equals(id)
         where rr.c.Equals(anotherId)
         select new
         {
             rr.d, rr.x, rr.a, 
             rr.y, rr.z, rr.v, 
             rr.e, rd.r
         };

var r1 = q1.Single();

我在其他地方成功地使用了非常类似的查询。

我会仔细检查LINQ to SQL正在使用的连接字符串。它可能只是命中了错误的数据库。

是否运行探查器以确保您认为stament将拥有的值实际上在发送到服务器的station中?

运行SQL server配置文件,获取它正在运行的确切查询,您不必插入任何值,然后运行该查询

你还在取得成果吗? 它是否插入了正确的值?
您能给我们看一下代码和生成的查询吗?

我们能看一下您的linq语句吗?我希望这不是实际的linq代码…超出了我已经解释的范围,或者其他方面?我也这么认为。我首先检查了它,它是正确的。只是尝试了,但需要获得此帐户的权限。将尝试这样做。它最终成为一个具有可为空值的问题。如果你对我如何改进我的查询有什么建议,请在结构上给我一些提示。@Chris:这是一个讨厌的错误,已经咬了我好几次了。如果这也影响了你,请访问微软Connect,让微软知道这个bug也影响了你。如果你想调整查询来清理它,考虑使用一个连接,而不是前两个WHERE子句,并将剩下的WHERE子句合并成一个语句。