2011-08-08 70 views
0

マイコード:暗黙的に「文字列」に型「int型」を変換できません

public void FillMaxBankCode() 
{ 
    try 
    { 
     DataSet ds = new DataSet(); 
     ds = bol.SelectMaxBankCode(); 
     string j = ds.Tables[0].Rows[0].ToString(); 
     txtbankid.Text = int.Parse(j); //ERROR HERE 
    } 
    catch (Exception ex) 
    { 
     MessageBox.Show(ex.Message); 
    } 
} 



    public DataSet SelectMaxBankCode() 
    { 
     try 
     { 
      **Squery = "EXEC SelectMaxBankCode";** 
      return dal.DBread(Squery); 
     } 
     catch (Exception ex) 
     { 
      throw ex; 
     } 
    } 

私はC#と上記のコードショーのエラーに新しいです..誰でも助けることができますか?

+0

ないのAC#の専門家を使用することをお勧め、あなたが実際にするとき、文字列がintに変換しているように思えます最初に文字列値が必要ですか? – Maggie

+0

私はテキストボックスに銀行のIDを表示したいのですが...何ができるのですか? –

答えて

5

txtbankid.Textプロパティタイプは文字列です。 int.parseは使用しないでください。する必要はありません。ただ、やる:txtbankid.Text = j;

+0

それ以上の変数は必要ありません。 'txtbankid.Text = ds.Tables [0] .Rows [0]。 ToString(); ' –

+0

、int.parseを外してもエラーが発生します。 –

+0

ds.Tables [0] .Rows [0] .ToString();とにかくあまりいいことではありません。 NULLをチェックしてtry catchを削除する必要があります。 – Peter

0
public void FillMaxBankCode() 
     { 
      try 
      { 
       DataSet ds = new DataSet(); 
       ds = bol.SelectMaxBankCode(); 
       string j = ds.Tables[0].Rows[0].ToString(); 
       txtbankid.Text = j; 
      } 
      catch (Exception ex) 
      { 
       MessageBox.Show(ex.Message); 
      } 
     } 
+0

もしiamがこのようにしているのなら、txtbankid.Text = j;私は番号を取得していない、それはsystem.drawを示す..... –

+0

@ Gugu:このディスカッションに関連するすべてのコードとエラーメッセージを投稿してください。ありがとう –

0

int.Parse(..)は整数に数字を含む文字列を変換するためです。文字列に関数int.Parse(..)を実行しようとしていますが、それを別の文字列に割り当てようとしています。 int.Parse(..)が返され、整数になるため、これは機能しません。 Int32.Parse (String) methodについてはこちらをご覧ください。あなたは値が整数がそれを割り当てる前にあることを確実にしたい場合は

0

は、私はあなたがTryParse

// check if the table and row exists 
if (ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0) 
{ 
    string j = ds.Tables[0].Rows[0].ToString(); 
    int value = 0; 
    if (int.TryParse(j, out value)) 
     txtbankid.Text = value.ToString(); 
} 
関連する問題