zoukankan      html  css  js  c++  java
  • Linq模型ObjectContext下查看Sql语句。

    ObjectContext 并没有提供 LINQ to SQL DataContext.Log 这样的功能,要查看实际生成的 T-SQL 语句,要么借助 SQL Server Sql Profiler 这样的工具,要么使用 ObjectQuery.ToTraceString() 方法。

    using (var context = new TestEntities())

    {
        var users1 = context.User.Where(u => u.Name == "user1");
        Console.WriteLine((users1 as ObjectQuery).ToTraceString());
    var users2 = from u in context.User where u.Name == "user1" select u; Console.WriteLine((users2 as ObjectQuery).ToTraceString());

    var sql = "SELECT VALUE u FROM TestEntities.User AS u WHERE u.Name = 'user1'"; var users3 = context.CreateQuery<User>(sql); Console.WriteLine(users3.ToTraceString()) }

    输出:

    SELECT
    [Extent1].[Id] AS [Id],
    [Extent1].[Name] AS [Name],
    [Extent1].[Age] AS [Age]
    FROM [dbo].[User] AS [Extent1]
    WHERE N'user1' = [Extent1].[Name]
    SELECT
    [Extent1].[Id] AS [Id],
    [Extent1].[Name] AS [Name],
    [Extent1].[Age] AS [Age]
    FROM [dbo].[User] AS [Extent1]
    WHERE N'user1' = [Extent1].[Name]
    SELECT
    [Extent1].[Id] AS [Id],
    [Extent1].[Name] AS [Name],
    [Extent1].[Age] AS [Age]
    FROM [dbo].[User] AS [Extent1]
    WHERE [Extent1].[Name] = 'user1'
  • 相关阅读:
    UVA 439 Knight Moves
    UVA 673 Parentheses Balance
    UVa 536 Tree Recovery
    UVA 712 S-Trees
    UVA 12657 Boxes in a Line
    UVA 679 Dropping Balls
    UVA 1603 Square Destroyer
    UVA 1343 The Rotation Game
    UVA 1374 Power Calculus
    UVA 12558 Egyptian Fractions (HARD version)
  • 原文地址:https://www.cnblogs.com/wgx0428/p/3747014.html
Copyright © 2011-2022 走看看