对if语句施加限制

dji*_*inc -2 c# if-statement console-application

这是一个非常基本的问题,但我如何只在if语句中允许数字值?例如,如果用户输入字符串作为id,则应该给出错误,说明只允许数值.

Console.Write("Please enter your ID: ");
int id = Int32.Parse(Console.ReadLine());
if () // what should I write here?
{
    Console.WriteLine("Only Numeric value are allowed.");
}else{
Console.WriteLine("My ID is {0}", id);}
Run Code Online (Sandbox Code Playgroud)

Hab*_*bib 6

使用 int.TryParse

Console.Write("Please enter your ID: ");
int id;
if (!int.TryParse(Console.ReadLine(), out id)) // what should I write here?
{
    Console.WriteLine("Only Numeric value are allowed.");
}
else
{
    Console.WriteLine("My ID is {0}", id);
}
Run Code Online (Sandbox Code Playgroud)

TryParse如果解析失败,则一组方法不会引发异常,而是返回bool指示成功或失败的方法.