可能重复:
Nullable types and the ternary operator: why is `? 10 : null` forbidden?
为什么这不起作用?看起来像有效的代码。
string cert = ddCovCert.SelectedValue;
int? x = (string.IsNullOrEmpty(cert)) ? null: int.Parse(cert);
Display(x);
我该如何编码呢?该方法采用Nullable。如果下拉列表中选择了一个字符串,我需要将其解析为一个int,否则我想将null传递给该方法。
答案 0 :(得分:242)
int? x = string.IsNullOrEmpty(cert) ? (int?)null : int.Parse(cert);
答案 1 :(得分:9)
我遇到了同样的事情......我通常只是将null转换为(int?)
int? x = (string.IsNullOrEmpty(cert)) ? (int?)null: int.Parse(cert);