2013-03-01 81 views
0

嗨,我只是學習使用類型化的數據集,我似乎無法找到一個很好的例子如何使用存儲過程與他們一起工作。從鍵入的數據集訪問存儲過程

到目前爲止,我設法創建DataSet添加表和存儲procedures.Here是我:

enter image description here

舉例來說,如果我想用存儲過程GetBooks我會通過兩個參數。我試過這樣做:

BooksAndCategoriesDataSet context = new BooksAndCategoriesDataSet(); 
context.GetBooks(1 , 5) 

但是,正如你們已經知道這是行不通的。

那麼如何在我的代碼中使用類型化數據集中的任何存儲過程呢?

+0

看看你在設計師中有什麼,我認爲你錯過了一些東西。您不需要爲getBooksBy創建單獨的表適配器。 。 。相反,您可以在一個tableadapter中創建多個參數查詢 – peterG 2013-03-03 12:54:05

回答

1

首先在DataSet右鍵單擊並做Add -> Query -> Select stored procedure(記得從存儲過程返回的查詢應符合DataSet),或者你可以拖動和拖放在Visual Studio從Server Explorer存儲過程(這個人會解決由存儲返回的查詢程序並相應地創建DataSet)。這也將創建2個類:<DataSetName>TableAdapter<DataSetName>DataTable

下一頁使用它的代碼,你必須使用2個不同的類別:

var ta = new GetBooksTableAdapter(); 
var dt = new GetBooksDataTable(); 

ta.Fill(dt, 1, 5); //where 1 is first parameter, 5 is second. 

要訪問數據庫返回的數據執行以下操作:

foreach (GetBooksRow row in dt.Rows) 
{ 
    //logic 
} 

我已經做了很多與DataSets和我強烈建議不要使用它們,但我希望這會指出你正確的方向。

相關問題