2、NewBLL.cs
添加如下方法:
public IList<UserInfo> GetUsers():返回所有的用户信息列表
public UserInfo GetUser(int UserId):返回指定用户的详细信息
public bool AddUser(UserInfo User):新增用户信息
public bool ChangeUser(UserInfo User):更新用户信息
public void RemoveUser(int UserId):移除用户信息
此文件就属于业务逻辑层了,专门用来处理与业务逻辑有关的操作。可能有很多人觉得这一层唯一的用途,就是把表现层传过来的数据转发给数据层。这种情况确实很多,但这只能说明项目比较简单,或者项目本身与业务的关系结合的不紧密(比如当前比较流行的MIS),所以造成业务层无事可做,只起到了一个转发的作用。但这不代表业务层可有可无,随着项目的增大,或者业务关系比较多,业务层就会体现出它的作用来了。
此处最可能造成错误的,就是把数据操作代码划在了业务逻辑层,而把数据库作为了数据访问层。
举例:有些朋友感觉BLL层意义不大,只是将DAL的数据提上来就转发给了UI,而未作任何处理。看一下这个例子
public IList<UserInfo> SelectUsers():返回所有的用户信息列表
public UserInfo SelectUser(int UserId):返回指定用户的相信信息
public bool InsertUser(UserInfo User):新增用户信息
public bool UpdateUser(UserInfo User):更新用户信息
public void DeleteUser(int UserId):移除用户信息
数据访问层接口,这又是一个可有可无的东西,因为Petshop中带了它和ClassFactory类工厂,所以有些项目不论需不需要支持多数据源,都把这两个东西做了进来,有的甚至不建ClassFactory而只建了IDAL,然后“IUserDAL iUserDal = new UserDAL();”,不知意义何在。这就完全是画虎不成反类犬了。