我想在C#中将字符串解析为可以为空的int.即.我想要返回字符串的int值,如果无法解析,则返回null.
我有点希望这会奏效
int? val = stringVal as int?;
Run Code Online (Sandbox Code Playgroud)
但这不起作用,所以我现在这样做的方式是我写了这个扩展方法
public static int? ParseNullableInt(this string value)
{
if (value == null || value.Trim() == string.Empty)
{
return null;
}
else
{
try
{
return int.Parse(value);
}
catch
{
return null;
}
}
}
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法呢?
编辑: 感谢TryParse的建议,我确实知道这一点,但它的结果大致相同.我更感兴趣的是知道是否有一个内置的框架方法可以直接解析为可以为空的int?