将值从索引器安全地转换为长
Convert value from indexer safely to long
我在从索引器安全地获取长值时遇到问题。在我想要的值为空之前,以下代码可以正常工作。然后索引器 returns 空字符串和我的代码抛出异常。
long TargetID = 0;
object _targetID = CurrentData[TargetIDKey];
if (_targetID !=null && (Convert.ToInt64(_targetID)) > 0)
TargetID = Convert.ToInt64(_targetID);
else
TargetID = -1;
我该如何解决这个问题,而不是异常我转到 else 子句?
您可以改用 long.TryParse
。
long targetID;
if(_targetID == null || !long.TryParse(_targetID.ToString(), out targetID))
targetID = -1;
我在从索引器安全地获取长值时遇到问题。在我想要的值为空之前,以下代码可以正常工作。然后索引器 returns 空字符串和我的代码抛出异常。
long TargetID = 0;
object _targetID = CurrentData[TargetIDKey];
if (_targetID !=null && (Convert.ToInt64(_targetID)) > 0)
TargetID = Convert.ToInt64(_targetID);
else
TargetID = -1;
我该如何解决这个问题,而不是异常我转到 else 子句?
您可以改用 long.TryParse
。
long targetID;
if(_targetID == null || !long.TryParse(_targetID.ToString(), out targetID))
targetID = -1;