2016-05-17 44 views
0

我試圖表明我的數據表網格視圖的GridView在C#中不顯示數據和一個大eror

protected void show_data(object sender, EventArgs e) 
    { 
     string str = "Data Source=(LocalDB)\\MSSQLLocalDB;"; 
     str += "AttachDbFilename=|DataDirectory|DinoData.mdf;"; 
     str += "Integrated Security= True"; 
     SqlConnection c; 
     c = new SqlConnection(str); 
     GV.DataSource = User; 
     GV.DataBind(); 
    } 

的eror:

「System.InvalidOperationException」類型的異常發生在 System.Web.dll中,但未在用戶代碼中處理

附加信息:數據源是無效類型。它必須是 IListSource,IEnumerable或IDataSource。

用戶表:

CREATE TABLE [dbo].[User] (
    [Username] VARCHAR (100) NOT NULL, 
    [Pasword] VARCHAR (100) NOT NULL, 
    [FName]  VARCHAR (MAX) NOT NULL, 
    [LName]  VARCHAR (MAX) NOT NULL, 
    [Location] VARCHAR (MAX) NOT NULL, 
    [Profesion] VARCHAR (MAX) NOT NULL, 
    [email]  VARCHAR (MAX) NOT NULL, 
    [gender] VARCHAR (MAX) NOT NULL, 
    [money]  INT   NOT NULL, 
    [property] VARCHAR (MAX) NULL, 
    [xp]  INT   NOT NULL, 
    [level]  INT   NOT NULL, 
    PRIMARY KEY CLUSTERED ([Username] ASC) 
); 

我應該怎麼辦? 如果我想只顯示一部分表格與gridview如何做到這一點? 感謝幫助

+2

你不顯示什麼'User'是,但顯然這是一個錯誤的鍵入 –

+0

對於'GV.DataSource = User;',這是什麼?如異常消息所示,您只能使用實現這些接口的對象綁定數據 – Abbath

+0

我添加用戶表 –

回答

0

您有沒有查詢到從數據庫中選擇行,你必須有一個選擇statment,如:

protected void show_data(object sender, EventArgs e) 
     { 
      string str = "Data Source=(LocalDB)\\MSSQLLocalDB;"; 
      str += "AttachDbFilename=|DataDirectory|DinoData.mdf;"; 
      str += "Integrated Security= True"; 
      SqlConnection c; 
      c = new SqlConnection(str); 
      DataTable dt = new DataTable(); 
      //For exemple t select all rows in you Table User,you can insert a condition here 
      String req = "SELECT * FROM [User]"; 
      SqlDataAdapter da = new SqlDataAdapter(req, c); 
      da.Fill(dt); 
      GV.DataSource = dt; 
      GV.DataBind(); 
     } 
+0

DataTable dt = new DataTable(); 顯示在數據表 –

+0

eror @OzCohen是一個簡單爲例 –

+0

好,但爲什麼會出現eror在數據表 –