文字列をIntに変換するにはどうしたらいいですか?

TextBoxD1.Textがあるのですが、これをint`に変換してデータベースに格納したいのです。

どうすればいいですか?

ソリューション

試してみてください。

int x = Int32.Parse(TextBoxD1.Text);

またはもっと良い方法があります。

int x = 0;

Int32.TryParse(TextBoxD1.Text, out x);

また、Int32.TryParse`bool を返すので、その戻り値を使って、解析の試みの結果について判断することができます。

int x = 0;

if (Int32.TryParse(TextBoxD1.Text, out x))
{
    // you know that the parsing attempt
    // was successful
}

興味のある方は、ParseTryParse の違いを要約すると、次のようになります。

TryParseメソッドはParseメソッドと同じです。 メソッドと似ていますが、TryParseメソッドは TryParseメソッドはParse > メソッドと似ていますが、変換に失敗しても例外を投げません。 TryParseメソッドはParse > メソッドと似ています。これにより TryParseメソッドはParseメソッドと同様です。 をテストするために例外処理を使用する必要がなくなります。

sが無効であり、うまく解析できない場合に をテストする必要がなくなります。- MSDN.

解説 (8)
Convert.ToInt32( TextBoxD1.Text );

テキストボックスの内容が有効な整数であると確信できる場合に使用します。より安全なオプションは

int val = 0;
Int32.TryParse( TextBoxD1.Text, out val );

これは、使用可能なデフォルト値を提供します。また、Int32.TryParse は、解析できたかどうかを示すブール値を返すので、if 文の条件として使用することもできます。

if( Int32.TryParse( TextBoxD1.Text, out val ){
  DoSomething(..);
} else {
  HandleBadInput(..);
}
解説 (2)
int.TryParse()

テキストが数字ではない場合はスローされません。

解説 (2)