1. ホーム
  2. c#

[解決済み] C# コードがコンパイルされない。nullとintの暗黙の変換ができない [重複]。

2023-04-04 14:32:40

質問

重複の可能性があります。

Nullable型と三項演算子: なぜ `? 10 : null` は禁止されているのですか?

なぜこれが動作しないのでしょうか?有効なコードのように思えるのですが。

  string cert = ddCovCert.SelectedValue;
  int? x = (string.IsNullOrEmpty(cert)) ? null: int.Parse(cert);
  Display(x);

どのようにコーディングすればよいのでしょうか?このメソッドはNullableを受け取ります。ドロップダウンで文字列が選択されている場合、それをint型にパースする必要があります。そうでない場合、メソッドにnullを渡したいのです。

どのように解決するのですか?

int? x = string.IsNullOrEmpty(cert) ? (int?)null : int.Parse(cert);