簡體   English   中英

如何在ASP.NET/C#中將WHERE查詢的動態值獲取到數據網格中?

[英]How do I get a dynamic value for a WHERE query into a data grid in ASP.NET/C#?

我正在創建一個網頁,該網頁需要顯示數據網格以及從數據庫中提取的數據。 我在MS VS中將其作為ASP.NET/C#應用程序進行構建。 在我看來,我正在使用GridView元素。 我已經將GridView連接到數據庫,並且它正在正確提取數據。

但是,我需要限制用戶ID提取的數據,以便僅顯示給定用戶的數據。 我知道如何在GridView元素設計UI中對用戶ID值進行硬編碼,但是我需要該值是動態的。 具體來說,將從用戶輸入的網址中讀取。

因此,我要完成的工作是從url字符串中提取用戶ID(不是問題,我知道該怎么做),然后將其動態添加為數據庫查詢字符串中的WHERE查詢值。 它看起來應該像這樣:

SELECT * FROM [DatabaseTableName] WHERE ([customerID] = IDExtractedFromURL)

如何將動態客戶ID值(“ IDExtractedFromURL”)添加到GridView元素? 是否可以將其作為變量傳遞? 如果是這樣,它的語法是什么?

通常,我不會在查詢字符串中傳遞用戶ID,但是要完成您想要的操作,我會這樣做:

1)從查詢字符串獲取用戶ID

var userId = int.Parse(this.Request.QueryString("userId"));

2)將where過濾器添加到SQL

sql += "\\n WHERE [CustomerID] = @userId" ;

3)將參數添加到網格數據源(無論位於何處)

dataSource.SelectParameters.Add(new Parameter("userId", TypeCode.Int32, userId)))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM