VB LINQ到SQL isnull
我想要在LINQ到SQL
select isnull(x.COD, '1') as 'NCOD'
from table x
我试过这个。
From x In table
select NCOD = x.COD ?? '1';
我正在使用LINQPad 4和VB Expression。 但LINQPAd说我不能使用? 表达方式(西班牙语中没有使用西班牙语)
任何想法?
PD:对不起我的英文。
如果你的值类型是字符串,你可以使用下面的表达式:
result = from x in values select IF(String.IsNullOrEmpty(x),"No value",x);
如果它是可空类型(如int?,Double?,SomeClass?):
result = from x in values select IF(x.HasValue,x,1);
参考:
尝试以下查询,这对您会有所帮助。
var InvoiceNo = dbContext.table.where(x => (int?)x.ICOD) ?? "NCOD";
在这里, ?? 仅适用于可空int int?
而你是一个vb.net用户,你应该使用下面的代码,这对你有帮助...
Dim InvoiceNo = If(dbContext.table.where(Function(x) DirectCast(x.ICOD, System.Nullable(Of Integer))), "NCOD")
链接地址: http://www.djcxy.com/p/42857.html