0

ユーザーがデータグリッドビューからIDを選択し、[削除]ボタンをクリックすると、「入力文字列が正しい形式ではありませんでした」というエラーが表示されるという問題が発生しました。

ここに、皆さんがコードをよりよく理解できるようにするためのコードがあります。

private void btnDel_Click(object sender, EventArgs e)
    {
        using (satsEntities Setupctx = new satsEntities())
        {
            int ID = Int32.Parse(lblID.Text);
            var DeleteSL = (from delLS in Setupctx.locationstations
                           where delLS.locationstationID == ID
                           select delLS).Single();
            Setupctx.DeleteObject(DeleteSL);
            Setupctx.SaveChanges();
            this.Delete_LS_Load(null, EventArgs.Empty);
            MessageBox.Show("Selected Location Station Has Been Deleted.");
        }
    }
4

1 に答える 1

2

「入力文字列が正しい形式ではありませんでした」という例外が発生します。の上

int ID = Int32.Parse(lblID.Text);

あなたlblID.Textは数に変換できないものを持っています。数字とともに文字が含まれている可能性があります。

int.TryParseを使用して、テキストを数値に変換できるかどうかを確認してください。

int ID;
if(!int.TryParse(lblID.Text, out ID))
{
   Console.WriteLine("Invalid Number in lblID.Text");
}
于 2012-07-31T04:02:44.623 に答える