使用LINQ为基础的WEB开发三层架构下
完成前面的操作以后,开始建立数据访问层的类文件,这时,先在DAL项目下添加一个类文件,取名为DALEmployees.cs,其代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Auto.DAL
{
public class DALEmployees
{
/// <summary>
/// VS自动生成的数据模型
/// </summary>
NorthwindDataContext db = new NorthwindDataContext();
/// <summary>
/// 根据条件获取数据列表方法
/// </summary>
/// <param name="strCity">城市地址</param>
/// <returns>获取的Employees数据列表</returns>
public IQueryable<Employees> GetList(string strCity)
{
//根据城市地质,通过LINQ返回数据
return from p in db.Employees
where p.City == strCity
select p;
}
}
}
这个数据访问层中只建立了一个用来根据城市地址获取Employee数据的方法,它内部执行一段LINQ,返回一个IQueryable型的结果,由于LINQ后期编译的特性,这个结果只有在程序运行后才会返回数据集。
接着,建立业务逻辑层,在BLL项目中,添加一个类文件,取名为BLLEmployees.cs,其代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Auto.DAL;
namespace Auto.BLL
{
public class BLLEmployees
{
/// <summary>
/// 通过城市名获得Employee数据
/// </summary>
/// <param name="strCity">城市名</param>
/// <returns>数据结果</returns>
public IQueryable<Employees> GetList(string strCity)
{
DALEmployees de=new DALEmployees();
//调用数据访问层的方法
return de.GetList(strCity);
}
}
}