DataSetデータセットの遍歴


ADO.NETはデータセットオブジェクトを提供し、データセットを利用して、データベースとの接続を切断してデータを操作することができ、複数のデータソースからのデータを操作することができます.
DataSetデータセットの遍歴:
DataSet遍歴をListに変換します.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;

namespace ConsoleApplication1
{
    /// 
    ///      
    /// 
    public class Order
    {
        /// 
        ///     
        /// 
        public string OrderNo { get; set; }

        /// 
        ///     
        /// 
        public string ProductName { get; set; }

        /// 
        ///   
        /// 
        public int? Quantity { get; set; }

        /// 
        ///    
        /// 
        public decimal? Money { get; set; }

        /// 
        ///     
        /// 
        public DateTime? SaleDate { get; set; }

        /// 
        ///  DataTable   List  
        /// 
        public static List ToList(DataSet dataSet)
        {
            List orderList = new List();
            if (dataSet != null && dataSet.Tables.Count > 0)
            {
                foreach (DataRow row in dataSet.Tables[0].Rows)
                {
                    Order order = new Order();
                    if (dataSet.Tables[0].Columns.Contains("OrderNo") && !Convert.IsDBNull(row["OrderNo"]))
                        order.OrderNo = Convert.ToString(row["OrderNo"]);

                    if (dataSet.Tables[0].Columns.Contains("ProductName") && !Convert.IsDBNull(row["ProductName"]))
                        order.ProductName = Convert.ToString(row["ProductName"]);

                    if (dataSet.Tables[0].Columns.Contains("Quantity") && !Convert.IsDBNull(row["Quantity"]))
                        order.Quantity = Convert.ToInt32(row["Quantity"]);

                    if (dataSet.Tables[0].Columns.Contains("Money") && !Convert.IsDBNull(row["Money"]))
                        order.Money = Convert.ToDecimal(row["Money"]);

                    if (dataSet.Tables[0].Columns.Contains("SaleDate") && !Convert.IsDBNull(row["SaleDate"]))
                        order.SaleDate = Convert.ToDateTime(row["SaleDate"]);

                    orderList.Add(order);
                }
            }
            return orderList;
        }
    }
}