using System.Collections.Generic; using System.Text; using BookStoreDALFactory; using BookStoreIDAL;
namespace BookStoreBLL {
public class Users {
private static AbstractDALFactory _BookStoreFactory = AbstractDALFactory.DALFactory(); private static IUsers _User=_BookStoreFactory.CreateUsers();//直接得到实际的数据库访问实例
public static BookStoreModels.Users GetModel(string loginId,int userRole) {
return _User.GetModel(loginId,userRole); }
public static BookStoreModels.Users GetModel(int _UserId) {
return _User.GetModel(_UserId); }
public static List
return _User.GetModelList(); }
public static List
return _User.GetModelList(userState); }
///
///
///
return _User.AddUser(_UserModel); }
///
///
///
///
return _User.DeleteUser(Id); }
///
///
///
return _User.UpdateUserState(_UserStateId,_Id); }
///
/// 判断是否存在此类型用户
/// 如果_UserRoleId=3则代表要早所有用户 ///
/// ///
public static bool IsExistSpecialUser(int _UserStateId) {
return _User.IsExistSpecialUser(_UserStateId); }
///
/// 判断是否存在此用户(系统中会员用户名是唯一的) ///
/// ///
public static bool IsExist(string _LoginId) {
return _User.IsExist(_LoginId); }
///
///
///
{
return _User.UpdateUser(_UserModel); }
///
///
///
return _User.UpdatePwd(_UserPw); } } }
抽象工厂类:BookSoreDALFactory.AbstractDALFactory.cs
using System;
using System.Collections.Generic; using System.Text; using BookStoreIDAL; using System.Configuration;
namespace BookStoreDALFactory {
public abstract class AbstractDALFactory {
public static AbstractDALFactory DALFactory() {
string dbType = ConfigurationManager.AppSettings[\].ToString(); AbstractDALFactory _DALFactory = null; switch(dbType) {
case \:
_DALFactory = new SqlServerFactory(); break; case \:
_DALFactory = new AccessFactory(); break; //... }
return _DALFactory;
}
//数据访问对象创建接口(抽象工厂提供抽象产品)解除具体数据访问的耦合 public abstract IAttachment CreateAttachment(); public abstract IBooks CreateBooks();
public abstract ICategories CreateCategories(); public abstract IOrderBook CreateOrderBook(); public abstract IOrders CreateOrders();
public abstract IPublishers CreatePublishers(); public abstract ISearchKeyword CreateSearchKeyword(); public abstract IUsers CreateUsers(); } }