C# 可为空的整数?(与linq合作)
关于将NULL转换为Int32,我遇到了异常 我从数据库中得到了一个表,其中包含可为null的tinyintC# 可为空的整数?(与linq合作),c#,.net,linq-to-sql,nemerle,C#,.net,Linq To Sql,Nemerle,关于将NULL转换为Int32,我遇到了异常 我从数据库中得到了一个表,其中包含可为null的tinyint [Column(Storage="_StatType", DbType="tinyint NULL")] public StatType : int { get { _StatType; } } (要获得C代码,只需替换变量的类型) 在制作linq select之后 def StartLinq = linq <#from lpi in _CfgListParIzm whe
[Column(Storage="_StatType", DbType="tinyint NULL")]
public StatType : int { get { _StatType; } }
(要获得C代码,只需替换变量的类型)
在制作linq select之后
def StartLinq = linq <#from lpi in _CfgListParIzm
where lpi.ID_ListParIzm==drr1
select (lpi.StatType)
#> ;
上面的代码很糟糕:(我不会使用它。我不知道nemerle,但在C中,你会使StatType成为一个可为空的整数(
nullable
akaint?
)而不是不可为空的。这是最合乎逻辑的解决方案-nemerle支持可为空的值类型吗?为什么这个问题被标记为C?这个问题是关于可为空的整数的。我不希望得到nemerle的答案。但也许我错了:-/@Peter-它有点像C。它还与nemerle可为空的类型混合在一起不是C?具体的,它是一个feaNet框架的真实性。哦,看来@nCdy做对了。。。
mutable STT : int = 0;
try
{
_=int.TryParse(StartLinq.ToArray()[0].ToString(), out STT);
}
catch { | _ is Exception => () /* I don't care*/ }