2011-03-15 56 views
0

我想綁定我的GridView與我的SQL查詢是我的數據源。我試過了,但它給了我一個錯誤。我在我的select查詢中使用我的登錄ID作爲where子句。這裏是我的代碼:綁定gridview與數據源給我無效列

string user; 
protected void Page_Load(object sender, EventArgs e) 
{ 
    Label1.Text = Session["unm"].ToString(); 
    user = Label1.Text; 

    Response.Write(user); 
    string queryString = "Select * from FILE_INFO WHERE ALLOCATED_TO = " + user + ""; 
    DataSet ds = GetData(queryString); 
    if (ds.Tables.Count > 0) 
    { 
     GridView1.DataSource = ds; 
     GridView1.DataBind(); 
    } 
    else 
    { 
     Response.Write("Unable to connect to the database"); 
    } 
} 
DataSet GetData(String queryString) 
{ 

string connectionString = @"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Integrated Security=True;User Instance=True"; 

     DataSet ds = new DataSet(); 

     SqlConnection con = new SqlConnection(connectionString); 
     SqlDataAdapter adapter = new SqlDataAdapter(queryString, con); 

     adapter.Fill(ds); 
     return ds; 
    } 

它讓我在這條線的無效列例外:

adapter.Fill(ds); 

有人能告訴我,我要去哪裏錯了嗎?

+0

如果是,請檢查allocated_to是否在表格中,然後檢查列的類型是否與您要比較的數據類似。 – 2011-03-15 07:47:10

+0

提供完整的異常詳細信息,如確切的聲明,錯誤代碼等。另外,我假設你在做asp。** net **的權利? – gideon 2011-03-15 07:51:52

回答

0

問題是這樣的聲明,你錯過了單引號的字符串值,並與這一個替換本聲明

string queryString = "Select * from FILE_INFO WHERE ALLOCATED_TO = '" + user + "'"; 
+0

感謝穆罕默德現在的工作 – shruti 2011-03-15 11:06:45

0

確認您的DataGrid中有「的AutoGenerateColumns」屬性設置爲「真」