相关疑难解决方法(0)

LINQ to SQL可以生成包含ISNULL函数的TSQL吗?

我想知道是否有人明确知道LINQ to SQL是否具有生成包含该ISNULL函数的TSQL代码的能力?

我知道??在查询中使用coalesce operator():

from o in Table
where (o.Field ?? 0) > 0
select o
Run Code Online (Sandbox Code Playgroud)

将导致LINQ to SQL发出COALESCE函数:

SELECT [t0].[Field]
FROM [Table] AS [t0]
WHERE (COALESCE([t0].[Field],0)) > 0
Run Code Online (Sandbox Code Playgroud)

并且,?:在查询中使用条件运算符():

from o in Table
where (o.Field == null ? 0 : o.Field) > 0
select o
Run Code Online (Sandbox Code Playgroud)

将导致TSQL包含一个CASE语句:

SELECT [t0].[Field]
FROM [Table] AS [t0]
WHERE (
    (CASE
        WHEN [t0].[Field] IS NULL THEN 0
        ELSE [t0].[Amount]
     END)) > 0
Run Code Online (Sandbox Code Playgroud)

但是,可以强制LINQ to …

c# linq-to-sql

5
推荐指数
1
解决办法
2463
查看次数

标签 统计

c# ×1

linq-to-sql ×1