gpt4 book ai didi

c# - Convert.TryToInt64 而不是 Convert.ToInt64?

转载 作者:太空狗 更新时间:2023-10-30 01:24:27 37 4
gpt4 key购买 nike

我有this我必须实现的功能:

protected override ValidationResult IsValid(
Object value,
ValidationContext validationContext
)
{
//Here is where I wanna test whether the following conversion is applicable
var x = Convert.ToInt64(value);
}

我可以将该行包装在一个 try-catch block 中,或者使用其他方法来执行该测试,这是其中之一:

var convertible = value as IConvertible;
if (convertible != null)
var x = convertible.ToInt64(null);

执行此操作最有效的方法是什么?

最佳答案

在这里你可以定义一个默认值,如果解析(转换)适用,它将返回转换后的 int64 否则将返回默认值:

Int64 DefaultValue = 0;
Int64.TryParse(MyVar , out DefaultValue);

即:

Int64 DefaultValue = 0;
Int64.TryParse("1234" , out DefaultValue);

默认值为 1234

Int64 DefaultValue = 0;
Int64.TryParse("test" , out DefaultValue);

默认值为 0

您还可以通过这样声明变量来使其更短:

 Int64.TryParse("123" , out Int64 DefaultValue);

关于c# - Convert.TryToInt64 而不是 Convert.ToInt64?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9345999/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com