三层架构中的代码,求大神逐句解释一下
DAL层publicList<SaleInfo>GetSaleInfoById(stringid){List<SaleInfo>saleInfos=newList<Sal...
DAL层
public List<SaleInfo> GetSaleInfoById(string id)
{
List<SaleInfo> saleInfos = new List<SaleInfo>();
DataSet ds = OracleHelper.ExecuteDataset("select * from t_sale where saleID ='" + id + "'", null);
foreach (DataRow row in ds.Tables[0].Rows)
{
SaleInfo saleInfo = new SaleInfo();
saleInfo.saleID = row[0].ToString();
saleInfo.employeeID = row[1].ToString();
saleInfo.sale_date = Convert.ToDateTime(row[2].ToString());
saleInfo.allprice = float.Parse(row[3].ToString());
saleInfo.state = row[4].ToString();
saleInfos.Add(saleInfo);
}
return saleInfos;
}BLL层
public class SaleManager
{
public List<SaleInfo> GetSaleById(string id)
{
return new SaleService().GetSaleInfoById(id);
}
} 展开
public List<SaleInfo> GetSaleInfoById(string id)
{
List<SaleInfo> saleInfos = new List<SaleInfo>();
DataSet ds = OracleHelper.ExecuteDataset("select * from t_sale where saleID ='" + id + "'", null);
foreach (DataRow row in ds.Tables[0].Rows)
{
SaleInfo saleInfo = new SaleInfo();
saleInfo.saleID = row[0].ToString();
saleInfo.employeeID = row[1].ToString();
saleInfo.sale_date = Convert.ToDateTime(row[2].ToString());
saleInfo.allprice = float.Parse(row[3].ToString());
saleInfo.state = row[4].ToString();
saleInfos.Add(saleInfo);
}
return saleInfos;
}BLL层
public class SaleManager
{
public List<SaleInfo> GetSaleById(string id)
{
return new SaleService().GetSaleInfoById(id);
}
} 展开
3个回答
展开全部
我帮你解释下啊:
Dal层:数据层获取数据
public List<SaleInfo> GetSaleInfoById(string id) //在这里定义了一个List<SaleInfo> 泛型,其中很显然 SaleInfo这个是一个类 封装了一些相应的字段(即你每行中所有的字段)
{
List<SaleInfo> saleInfos = new List<SaleInfo>();//实例化List<SaleInfo>对象
DataSet ds = OracleHelper.ExecuteDataset("select * from t_sale where saleID ='" + id + "'", null);//在dataset中保存你所查出来的数据
foreach (DataRow row in ds.Tables[0].Rows)//对表中的所有行进行循环
{
SaleInfo saleInfo = new SaleInfo();//声明一个类实例,
下面是把每行中的数据都存储到一个saleInfo对象中
saleInfo.saleID = row[0].ToString();
saleInfo.employeeID = row[1].ToString();
saleInfo.sale_date = Convert.ToDateTime(row[2].ToString());
saleInfo.allprice = float.Parse(row[3].ToString());
saleInfo.state = row[4].ToString();
saleInfos.Add(saleInfo); 然后把这个对象添加到list<SaleInfo>泛型中
}
return saleInfos; //最后返回这个泛型
这样就实现了表中的数据直接存储到了List<SaleInfo>这个泛型中
}
BLL层 这是逻辑层:在dal中我们只是获取数据,不用处理它
到bll中我们要把它处理成我们表现层所需要的
public class SaleManager
{
public List<SaleInfo> GetSaleById(string id)
{
return new SaleService().GetSaleInfoById(id); //这就是调用Dal中的方法
}
}
接着你在页面中直接调用 GetSaleById(string id)方法就OK了
Dal层:数据层获取数据
public List<SaleInfo> GetSaleInfoById(string id) //在这里定义了一个List<SaleInfo> 泛型,其中很显然 SaleInfo这个是一个类 封装了一些相应的字段(即你每行中所有的字段)
{
List<SaleInfo> saleInfos = new List<SaleInfo>();//实例化List<SaleInfo>对象
DataSet ds = OracleHelper.ExecuteDataset("select * from t_sale where saleID ='" + id + "'", null);//在dataset中保存你所查出来的数据
foreach (DataRow row in ds.Tables[0].Rows)//对表中的所有行进行循环
{
SaleInfo saleInfo = new SaleInfo();//声明一个类实例,
下面是把每行中的数据都存储到一个saleInfo对象中
saleInfo.saleID = row[0].ToString();
saleInfo.employeeID = row[1].ToString();
saleInfo.sale_date = Convert.ToDateTime(row[2].ToString());
saleInfo.allprice = float.Parse(row[3].ToString());
saleInfo.state = row[4].ToString();
saleInfos.Add(saleInfo); 然后把这个对象添加到list<SaleInfo>泛型中
}
return saleInfos; //最后返回这个泛型
这样就实现了表中的数据直接存储到了List<SaleInfo>这个泛型中
}
BLL层 这是逻辑层:在dal中我们只是获取数据,不用处理它
到bll中我们要把它处理成我们表现层所需要的
public class SaleManager
{
public List<SaleInfo> GetSaleById(string id)
{
return new SaleService().GetSaleInfoById(id); //这就是调用Dal中的方法
}
}
接着你在页面中直接调用 GetSaleById(string id)方法就OK了
展开全部
DAL层
申明一个集合,存放SaleInfo类型的数据
执行一条SELECT查询语句,得到结果集,存在DataSet中
循环遍历DataSet中的数据,把每一行数据,组成SaleInfo类型的数据,添加到第一条语句申明的集合中
返回集合
BLL层
1.根据查询条件id,得到所要的数据集合
追问
3.循环遍历DataSet中的数据 是什么意思a
追答
就是你访问数据库时,查询出来的结果,是一张表结构的数据(就是有多条数据,比如3条)
然后它循环遍历每一条数据,其实每一条数据就是一个SaleInfo类,每一列对应SaleInfo类的属性。
所以他遍历DataTable,得到每一行数据(DataRow),然后又把DataRow中的每一列,赋值给对应的SaleInfo类的属性
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
/// <summary>
/// 声明一个集合的方法 集合的对象是SaleInfo
/// </summary>
/// <param name="id">页面穿过来的id</param>
/// <returns></returns>
public List<SaleInfo> GetSaleInfoById(string id)
{
List<SaleInfo> saleInfos = new List<SaleInfo>();//声明一个集合的对象
DataSet ds = OracleHelper.ExecuteDataset("select * from t_sale where saleID ='" + id + "'", null);//根据id查询数据 并且把值赋给DataSet数据集
foreach (DataRow row in ds.Tables[0].Rows)//遍历DataSet数据集
{
SaleInfo saleInfo = new SaleInfo(); //实例化类
saleInfo.saleID = row[0].ToString();//把数据集里面的ID赋给SeleInfo中的Id
saleInfo.employeeID = row[1].ToString();//把数据集里面的employeeID赋给SeleInfo中的employeeID
saleInfo.sale_date = Convert.ToDateTime(row[2].ToString());//把数据集里面的sale_date赋给SeleInfo中的sale_date
saleInfo.allprice = float.Parse(row[3].ToString());//把数据集里面的allprice赋给SeleInfo中的allprice
saleInfo.state = row[4].ToString();//把数据集里面的state赋给SeleInfo中的state
saleInfos.Add(saleInfo);//把刚才实例化类(每个字段都有值了)的添加到集合中去
}
return saleInfos;//返回一个集合
}BLL层
public class SaleManager //声明一个SaleManager方法
{
/// <summary>
/// 声明一个集合的方法 集合的对象是SaleInfo
/// </summary>
/// <param name="id">页面穿过来的id</param>
/// <returns></returns>
public List<SaleInfo> GetSaleById(string id)
{
return new SaleService().GetSaleInfoById(id);//引用DAL层的方法
}
}
/// 声明一个集合的方法 集合的对象是SaleInfo
/// </summary>
/// <param name="id">页面穿过来的id</param>
/// <returns></returns>
public List<SaleInfo> GetSaleInfoById(string id)
{
List<SaleInfo> saleInfos = new List<SaleInfo>();//声明一个集合的对象
DataSet ds = OracleHelper.ExecuteDataset("select * from t_sale where saleID ='" + id + "'", null);//根据id查询数据 并且把值赋给DataSet数据集
foreach (DataRow row in ds.Tables[0].Rows)//遍历DataSet数据集
{
SaleInfo saleInfo = new SaleInfo(); //实例化类
saleInfo.saleID = row[0].ToString();//把数据集里面的ID赋给SeleInfo中的Id
saleInfo.employeeID = row[1].ToString();//把数据集里面的employeeID赋给SeleInfo中的employeeID
saleInfo.sale_date = Convert.ToDateTime(row[2].ToString());//把数据集里面的sale_date赋给SeleInfo中的sale_date
saleInfo.allprice = float.Parse(row[3].ToString());//把数据集里面的allprice赋给SeleInfo中的allprice
saleInfo.state = row[4].ToString();//把数据集里面的state赋给SeleInfo中的state
saleInfos.Add(saleInfo);//把刚才实例化类(每个字段都有值了)的添加到集合中去
}
return saleInfos;//返回一个集合
}BLL层
public class SaleManager //声明一个SaleManager方法
{
/// <summary>
/// 声明一个集合的方法 集合的对象是SaleInfo
/// </summary>
/// <param name="id">页面穿过来的id</param>
/// <returns></returns>
public List<SaleInfo> GetSaleById(string id)
{
return new SaleService().GetSaleInfoById(id);//引用DAL层的方法
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询