我正在尝试通过使用 short-if 来缩短我的代码:
int? myInt=myTextBox.Text == "" ? null :
Convert.ToInt32(myTextBox.Text);
但我收到以下错误:无法确定条件表达式的类型,因为''和'int'之间没有隐式转换
以下作品:
int? myInt;
if (myTextBox.Text == "") //if no text in the box
myInt=null;
else
myInt=Convert.ToInt32(myTextBox.Text);
如果我用整数替换'null'(比如'4'),它也可以工作:
int? myInt=myTextBox.Text == "" ? 4:
Convert.ToInt32(myTextBox.Text);