2

質問があります。私は一日中それを解決しようとしましたが、本当に立ち往生しています。私は VS2010 と SQL Server 2012 (かなり悪い組み合わせ) を使用しており、次のようなかなり単純な C# と ASP.net コードを実行しようとしています。

string conn = ConfigurationManager.ConnectionStrings["BazaConnectionString"].ConnectionString;

SqlConnection connect = new SqlConnection(conn);

SqlDataAdapter sqlAdapter = new SqlDataAdapter();
SqlCommand cmd = new SqlCommand("SELECT * FROM  Seminar", connect);
sqlAdapter.SelectCommand = cmd;

DataTable tablica = new DataTable();
sqlAdapter.Fill(tablica);

GridView1.DataSource = tablica;
GridView1.DataBind();

問題は、私のグリッドビューが常に空であることです。テーブルにデータがあり、SELECT *すべてを選択する必要がありますが、空のテーブルが返されます。Dataset と DataTable を試してみましたが、何も機能していないようです。どんな助けでも大歓迎です。前もって感謝します。

4

2 に答える 2

1

私はあなたが例外(おそらくタイムアウト)に遭遇しているかもしれないという予感があります、そしてあなたはこれを適切に扱っていません...

次のようなものを試してください。

string conn = ConfigurationManager.ConnectionStrings["BazaConnectionString"].ConnectionString;

using (SqlConnection connect = new SqlConnection(conn))
using (SqlCommand cmd = new SqlCommand("SELECT * FROM  Seminar", connect))
using (SqlDataAdapter sqlAdapter = new SqlDataAdapter(cmd))
{
   try
   {
      DataTable tablica = new DataTable();
      sqlAdapter.Fill(tablica);

      GridView1.DataSource = tablica;
      GridView1.DataBind();
   }
   catch(Exception exc)
   {
       string msg = exc.GetType().FullName + ": " + exc.Message;
   }
}

catchこのコードを実行すると、たまたまブロックに陥りますか?もしそうなら:例外は何ですか?それはあなたに何を伝えますか?

于 2012-09-23T14:47:51.147 に答える
0
SqlConnection connect = new SqlConnection(conn);
connect.Open();
于 2012-09-23T14:47:49.337 に答える