检查查询字符串是否为int的最佳方法是什么?

问题描述 投票:3回答:5

我的一位同事想到的一个问题是,检查查询字符串是否为int的最佳方法是什么。我建议使用经典的Int.Parse并尝试捕获,也建议使用TryParse。实际上我想不出任何其他方式。有任何想法吗?

c# asp.net
5个回答
14
投票

Int32.TryParse将是你最好的选择。


2
投票

TryParse可能是你最好的选择,因为它将允许字符串的不同格式,并告诉你通过布尔值是否有效。


1
投票

我喜欢Int32.TryParse。你可以使用正则表达式而不是我想,但我不确定会有什么意义。


0
投票

可能不太有用,因为你可能想要实际的int(尽管它可以扩展为这样做)。注意:我不会这样做,但它是一种他没有想到的替代方式。

bool isNumeric = true;
foreach (char c in queryString) {
    if (!char.IsDigit(c)) {
       isNumeric = false;
       break;
    }
}

0
投票

我更喜欢TryParse方法。两者都差不多,我相信TryParse在方法内部执行try {} catch {},所以我怀疑执行中存在很大差异。

© www.soinside.com 2019 - 2024. All rights reserved.