为什么当查询包含声明的变量时,实体框架的SQL查询在SQL Server分析器中不可见
本文关键字:SQL 查询 分析器 Server 实体 声明 包含 变量 为什么 框架 | 更新日期: 2023-09-27 17:53:27
代码段:
using (var dc = new Database())
{
var results = from a in dc.Article
where a.IdNeswpaper == 12
select new
{
a.Id,
};
dataGrid1.ItemsSource = results;
}
这个查询在Sql Profiler中是可见的,但是这个:
int idNews = 12;
using (var dc = new Database())
{
var results = from a in dc.Article
where a.IdNeswpaper == idNews
select new
{
a.Id,
};
dataGrid1.ItemsSource = results;
}
不可见,两者都正确完成并显示数据。为什么第二个查询在Sql Profiler中不可见?什么好主意吗?
我不想告诉你,但你一定看起来更好。查询就在那里。也许你把它过滤掉了?
要点是-没有办法通过连接从数据库中提取数据而不提交SQL文本。一个也没有。因此,要获取数据,查询必须在那里