![Phân tích tư tưởng của nhân dân qua đoạn thơ: Những người vợ nhớ chồng… Những cuộc đời đã hóa sông núi ta trong Đất nước của Nguyễn Khoa Điềm](https://timtailieu.net/upload/document/136415/phan-tich-tu-tuong-cua-nhan-dan-qua-doan-tho-039-039-nhung-nguoi-vo-nho-chong-nhung-cuoc-doi-da-hoa-song-nui-ta-039-039-trong-dat-nuoc-cua-nguyen-khoa-136415.jpg)
Getting Typed DataRows from DataViews
Số trang: 3
Loại file: pdf
Dung lượng: 13.71 KB
Lượt xem: 15
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
[ Team LiB ] Recipe 3.11 Getting Typed DataRows from DataViews Problem When using a DataView to find rows in a typed DataSet, you want to convert the rows you find to typed DataRow objects having all the properties and methods defined in your typed DataSet.
Nội dung trích xuất từ tài liệu:
Getting Typed DataRows from DataViews[ Team LiB ]Recipe 3.11 Getting Typed DataRows from DataViewsProblemWhen using a DataView to find rows in a typed DataSet, you want to convert the rowsyou find to typed DataRow objects having all the properties and methods defined in yourtyped DataSet.SolutionCast the DataRow object returned by the Row property of a DataRowView to a typedDataRow.The sample code contains two event handlers:Form.Load Sets up the sample by creating a typed DataSet containing the Categories table from the Northwind sample database. The default view of the typed Categories table sorted by the CategoryID is bound to the data grid on the form.Find Button.Click Finds the row in the view matching the user specified CategoryID, gets the underlying table row, and casts that to the typed row.The C# code is shown in Example 3-11.Example 3-11. File: TypedDataRowFromDataViewForm.cs// Namespaces, variables, and constantsusing System;using System.Configuration;using System.Windows.Forms;using System.Text;using System.Data;using System.Data.SqlClient;private DataView dv;// Table name constantsprivate const String CATEGORIES_TABLE = Categories;// . . .private void TypedDataRowFromDataViewForm_Load(object sender, System.EventArgs e){ // Create the typed DataSet. CategoriesDS dsTyped = new CategoriesDS( ); // Create and fill the Categories table. String sqlText = SELECT CategoryID, CategoryName, Description FROM Categories; SqlDataAdapter da = new SqlDataAdapter(sqlText, ConfigurationSettings.AppSettings[Sql_ConnectString]); da.Fill(dsTyped.Categories); // Get the default view and set the sort key. dv = dsTyped.Categories.DefaultView; dv.Sort = CategoryID; // Bind the default view of the Categories table to the grid. dataGrid.DataSource = dv;}private void findButton_Click(object sender, System.EventArgs e){ int categoryId = 0; try { categoryId = Convert.ToInt32(categoryIdTextBox.Text); // Get the index of the find row in the view. int viewRowIndex = dv.Find(categoryId); if (viewRowIndex == -1) MessageBox.Show(Row not found for Category ID = + categoryId); else { // Cast the underlying row in the view to a typed row. CategoriesDS.CategoriesRow typedRow = (CategoriesDS.CategoriesRow)dv[viewRowIndex].Row; // Display the located typed row. MessageBox.Show(typedRow.CategoryID + - + typedRow.CategoryName); } } catch (Exception ex) { MessageBox.Show(ex.Message); }}DiscussionThe DataView indexer in C# or Item property in VB.NET allows access to theDataRowView objects, or Windows Form control views of a DataRow, contained in theDataView. The DataRowView object in turn exposes a Row property that is a referenceto the underlying DataRow object. Just as DataTable objects contain DataRow objects,DataView objects contain DataRowView objects.The Find( ) method of the DataView returns the index of the row matching the specifiedsearch criteria. You can use the index to get a single DataRowView from the DataView.The Row property of this DataRowView object is used to return the underlying DataRowobject. The typed DataSet classes—including the DataTable, DataColumn, and DataRowobjects—inherit from the ADO.NET disconnected classes allowing you to cast theDataRow to the strongly typed row.[ Team LiB ]
Nội dung trích xuất từ tài liệu:
Getting Typed DataRows from DataViews[ Team LiB ]Recipe 3.11 Getting Typed DataRows from DataViewsProblemWhen using a DataView to find rows in a typed DataSet, you want to convert the rowsyou find to typed DataRow objects having all the properties and methods defined in yourtyped DataSet.SolutionCast the DataRow object returned by the Row property of a DataRowView to a typedDataRow.The sample code contains two event handlers:Form.Load Sets up the sample by creating a typed DataSet containing the Categories table from the Northwind sample database. The default view of the typed Categories table sorted by the CategoryID is bound to the data grid on the form.Find Button.Click Finds the row in the view matching the user specified CategoryID, gets the underlying table row, and casts that to the typed row.The C# code is shown in Example 3-11.Example 3-11. File: TypedDataRowFromDataViewForm.cs// Namespaces, variables, and constantsusing System;using System.Configuration;using System.Windows.Forms;using System.Text;using System.Data;using System.Data.SqlClient;private DataView dv;// Table name constantsprivate const String CATEGORIES_TABLE = Categories;// . . .private void TypedDataRowFromDataViewForm_Load(object sender, System.EventArgs e){ // Create the typed DataSet. CategoriesDS dsTyped = new CategoriesDS( ); // Create and fill the Categories table. String sqlText = SELECT CategoryID, CategoryName, Description FROM Categories; SqlDataAdapter da = new SqlDataAdapter(sqlText, ConfigurationSettings.AppSettings[Sql_ConnectString]); da.Fill(dsTyped.Categories); // Get the default view and set the sort key. dv = dsTyped.Categories.DefaultView; dv.Sort = CategoryID; // Bind the default view of the Categories table to the grid. dataGrid.DataSource = dv;}private void findButton_Click(object sender, System.EventArgs e){ int categoryId = 0; try { categoryId = Convert.ToInt32(categoryIdTextBox.Text); // Get the index of the find row in the view. int viewRowIndex = dv.Find(categoryId); if (viewRowIndex == -1) MessageBox.Show(Row not found for Category ID = + categoryId); else { // Cast the underlying row in the view to a typed row. CategoriesDS.CategoriesRow typedRow = (CategoriesDS.CategoriesRow)dv[viewRowIndex].Row; // Display the located typed row. MessageBox.Show(typedRow.CategoryID + - + typedRow.CategoryName); } } catch (Exception ex) { MessageBox.Show(ex.Message); }}DiscussionThe DataView indexer in C# or Item property in VB.NET allows access to theDataRowView objects, or Windows Form control views of a DataRow, contained in theDataView. The DataRowView object in turn exposes a Row property that is a referenceto the underlying DataRow object. Just as DataTable objects contain DataRow objects,DataView objects contain DataRowView objects.The Find( ) method of the DataView returns the index of the row matching the specifiedsearch criteria. You can use the index to get a single DataRowView from the DataView.The Row property of this DataRowView object is used to return the underlying DataRowobject. The typed DataSet classes—including the DataTable, DataColumn, and DataRowobjects—inherit from the ADO.NET disconnected classes allowing you to cast theDataRow to the strongly typed row.[ Team LiB ]
Tìm kiếm theo từ khóa liên quan:
công nghệ thông tin kỹ thuật lập trình Oreilly Ado Dot Net Cookbook Ebook-Lib Getting Typed DataRows from DataViewsTài liệu liên quan:
-
52 trang 434 1 0
-
Top 10 mẹo 'đơn giản nhưng hữu ích' trong nhiếp ảnh
11 trang 321 0 0 -
74 trang 304 0 0
-
96 trang 299 0 0
-
Báo cáo thực tập thực tế: Nghiên cứu và xây dựng website bằng Wordpress
24 trang 293 0 0 -
Đồ án tốt nghiệp: Xây dựng ứng dụng di động android quản lý khách hàng cắt tóc
81 trang 286 0 0 -
EBay - Internet và câu chuyện thần kỳ: Phần 1
143 trang 277 0 0 -
Kỹ thuật lập trình trên Visual Basic 2005
148 trang 270 0 0 -
Tài liệu hướng dẫn sử dụng thư điện tử tài nguyên và môi trường
72 trang 270 0 0 -
Tài liệu dạy học môn Tin học trong chương trình đào tạo trình độ cao đẳng
348 trang 269 1 0