当前位置: 网学 > 编程文档 > SQL SERVER > 正文

基于业务对象的筛选

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/19
下载{$ArticleTitle}原创论文样式
derDate = value; }
    }

    public string Country
    {
       get { return country; }
       set { country = value; }
    }
}

对于集合(列表、或者叫行集)数据,我们使用List<Order>来存储。接下来在App_Code目录下再创建一个文件 OrderManager.cs 用于从数据库返回结果集、填充列表,通常包含类似这样的代码:

public class OrderManager
{
    // 根据SQL语句获取列表对象
    public static List<Order> GetList(string query)
    {
       List<Order> list = null;
       SqlDataReader reader = ExecuteReader(query);

       if (reader.HasRows)   {
           list = new List<Order>();
           while (reader.Read()){
              list.Add(GetItem(reader));
           }
       }

       reader.Close();

       return list;
    }


    // 获取一个SqlDataReader对象
    private static SqlDataReader ExecuteReader(string query)
    {
       string connString = ConfigurationManager.ConnectionStrings["NorthwindConnectionString"].ConnectionString;
       SqlConnection conn = new SqlConnection(connString);
       SqlCommand cmd = new SqlCommand(query, conn);
       conn.Open();
       SqlDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);

       return reader;
    }

    // 从一行获取一个Order对象
    private static Order GetItem(IDataRecord record)
    {
       Order item = new Order();
       item.OrderId = Convert.ToInt32(record["orderId"]);
       item.CustomerId = record["CustomerId"].ToString();
       item.OrderDate = Convert.ToDateTime(record["OrderDate"]);
       item.Country = record["ShipCountry"].ToString();
       return item;
    }
}

上面的代码很好理解:GetList()方法接受一个查询语句,然后返回List<Order>列表。在GetList()方法内部,调用了 ExecuteReader()方法,ExecuteReader()方法根据传递进去的查询语句query创建并返回了一个SqlDataReader对象,它用于读取数据库返回的数据。在While语句中,调用了GetItem()方法,它根据每一个数据行创建了一个Order对象。最后将Order对象添加到List<Order&

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号