c# - 如何修改 Linq 生成的 sql 语句?

标签 c# linq

我在以下代码中总结了我的问题。

NorthwindDataContext dc = new NorthwindDataContext();
        var query = from c in dc.Customers
                    select c;

上面的代码正在生成以下 sql 语句

选择 [t0].[ID]、[t0].[FirstName]、[t0].[LastName]
FROM [dbo].[客户] AS [t0]

现在我想修改上面生成的查询是这样的

从 [dbo].[客户] 中选择 [t0].[ID]、[t0].[FirstName]、[t0].[LastName]
AS [t0] WITH (nolock)

是否可以在 linq 中修改生成的查询?如果是,那么如何?

最佳答案

您将无法以您想要的方式直接修改生成的 L2S T-SQL 代码(除非您修改事务隔离级别)。然而,我们已经相当简单地处理了这样的情况,方法是创建一个带有我们想要的锁定提示的 View 并查询该 View ,而不是直接查询表。

关于c# - 如何修改 Linq 生成的 sql 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4499333/

相关文章:

c# - 作为 .NET 可执行文件中托管模块的一部分,PE header 和 CLR header 中包含什么?

c# - "The description for Event ID X in Source Y cannot be found."

c# - EntityFramework.dll 中出现 'System.ArgumentException' 类型的异常,但未在用户代码中处理

c# - 需要帮助来使用表达式树构建 LINQ 查询

c# - 在 SVG 文件中获取 XML 元素时出现问题

C#:如何从派生类的静态方法调用基类的静态方法?

javascript - 处理 AJAX 返回上的 MVC 验证错误消息

c# - 最小化 LINQ 字符串 token 计数器

c# - 返回 Enumerable.Empty<T>().AsQueryable() 是个坏主意吗?

c# - ef core - 如何将类映射的多个变体映射到同一个表