2

私はC#でコーディングしていますが、実際には解決できないエラーがあります。誰かがここで私を助けてくれるかもしれません!

私の英語でごめんなさい、私はネイティブスピーカーではありません!

これが私のコードです:

public List<Materiel> GetAllTubas()
{
 DataAccess.Oradb getListTubas = new DataAccess.Oradb();
 getListTubas.GetTubaDatabase(null);

 List<Materiel> ListMateriel = new List<Materiel>(); 

 foreach(DataRow row in dt.Rows)  //the name "dt" does not exist in the current context     {
    var myListTuba = new Materiel();
    myListTuba.Nom = row["nom_tuba"];
    ListMateriel.Add(myListTuba);
 }

 return ListMateriel;
}

このメソッドでは、別のメソッド GetTubaDatabase を呼び出します。データベースと SQL クエリに接続すると、クエリの結果が DataTable dt で埋められます。ここで、Datatable のおかげでリストを作成したいと思いますが、エラーが表示されます。名前「dt」は現在のコンテキストには存在しません (私の母国語からほぼ翻訳されています)。

それは大きなエラーではないと思いますが、解決できず、どうすればよいかわかりません。

あなたが私を助けてくれることを願っています!

どうもありがとう !

4

3 に答える 3

5

最初に戻り値を変数に割り当てる必要があります。

DataTable dt = getListTubas.GetTubaDatabase(null);

その後、コードで後で使用できます。メソッドを実行しても、魔法のように変数が作成されるわけではありません。

于 2013-11-04T13:31:36.370 に答える
0

また、これを行うのを忘れました:

 myListTuba.Nom = row["nom_tuba"].ToString();

それはそれを行う必要があります

于 2013-11-04T13:58:53.303 に答える