2011-05-21 64 views
1

如何在c#asp.net中創建一個gridview控件,它的行爲就像一個mssql數據庫?我的意思是,我有一個下拉列表,其中的項目表示數據庫中的表名,gridview是在選定的表名上構建的。所以基本上,gridview顯示來自任何表格的數據都在下拉列表中選擇。我想用這個gridview編輯,插入或刪除數據庫中的行。有什麼建議麼?gridview像數據庫

回答

0

,因爲我無法找到解決這個問題,我已經決定要動態地創建一個表,並創建更新/插入引用表中的某些行的命令。

0

您需要使用下拉列表中選定的表名創建動態查詢。對數據庫執行它並將結果綁定回gridview。

見這個例子爲例

你需要做一些像這個 -

string connectionString = WebConfigurationManager.ConnectionStrings["Northwind"].ConnectionString; 
    string selectSQL = String.Format("SELECT * FROM [{0}]", ddlTable.SelectedValue); 

    //execute query, fill dataset 

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

此外,您可能想看看如何獲​​得List of all tables in database

+0

是的,我沒有問題,直到這裏,但updatecommand怎麼樣?我必須指定一個updatecommand以及如果這些表是動態的呢? – Shaokan 2011-05-21 10:38:13

0

如果你想要t o在您的ddl中動態生成表格列表,然後您可以看看here,您還可以利用this鏈接,這將幫助您使用gridView進行INSERT,DELETE,UPDATE更新。

希望它能幫助:)

2

gridview您可以輕鬆地通過使用查詢綁定表的所有值。

string selectSQL = String.Format("SELECT * FROM [{0}]", ddlTable.SelectedItem.Text); 

剛剛成立AutoGenerateColumns="True"

現在在GridView可以啓用命令字段中它會幫助你這個你可以在GridView中的列屬性找到。 通過使用您可以編輯刪除選擇GridTable中的任何行。

<asp:CommandField ShowEditButton="True" /> 
<asp:CommandField ShowSelectButton="True" /> 
<asp:CommandField ShowDeleteButton="True" /> 
+0

對不起,這是我的不好,我必須更具體,我已經可以從每個表中獲取數據沒有任何問題,但我怎麼能設置一個動態的updatecommand?我的意思是,一旦我在下拉列表中選擇了表格,gridview就會顯示相關數據,直到那裏沒有問題,但更新命令如何?因爲每個表格都有不同的結構,我必須在每個表格的代碼後面分別創建updatecommand,還是有任何自動的方法來做到這一點? – Shaokan 2011-05-21 09:38:04

+0

您是否嘗試LINQ來獲取,更新或刪除?如果您使用該功能,則必須明確寫入每個表數據 – Vir 2011-05-21 12:03:23

相關問題