从类型化数据集访问存储过程

时间:2013-03-01 09:46:46

标签: c# ado.net dataset strongly-typed-dataset

您好我正在学习使用类型化的DataSet,我似乎无法找到一个关于如何使用存储过程处理它们的好例子。

到目前为止,我设法创建DataSet添加表和存储过程。这就是我所拥有的:

enter image description here

例如,如果我想使用GetBooks存储过程,我必须传递两个参数。我试过这样做:

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

但是你们已经知道这不起作用了。

那么如何在代码中使用类型化数据集中的任何存储过程?

1 个答案:

答案 0 :(得分:1)

首先右键单击DataSet并执行Add -> Query -> Select stored procedure(请记住,存储过程返回的查询应与DataSet匹配)或者您只需从{{拖放存储过程1)在Visual Studio中(这个将解析存储过程返回的查询并相应地创建Server Explorer)。这也将创建2个类:DataSet<DataSetName>TableAdapter

接下来要在代码中使用它,你必须使用2个不同的类:

<DataSetName>DataTable

要访问从DataBase返回的数据,请执行以下操作:

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 } 合作很多,我强烈建议不要使用它们,但我希望这会指向正确的方向。