您的位置:首页 > 数据库

获取EF查询的SQL语句

2015-06-28 13:48 302 查看
在EF编程中我们可以通过lamda表达式可以进行查询数据,获取到IQueryable<T>结果,我们要想知道具体的SQL语句是什么需要使用ObjectQuery<T>进行处理

处理方法如下:

IQueryable<Data> data = this.ObjectContext.Data.Where(d => d.Name.StartsWith("测试"));
            ObjectQuery<Data> oq=data as ObjectQuery<Data>;
            String sql=oq.ToTraceString();


运行结果如下:

SELECT 
[Extent1].[ID] AS [ID], 
[Extent1].[Name] AS [Name]
FROM (SELECT 
      [Data].[ID] AS [ID],    
      [Data].[Name] AS [Name]
      FROM [dbo].[Data] AS [Data]) AS [Extent1]
WHERE [Extent1].[Name] LIKE '测试%'
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: