DAL/AchieveDALFactory/DALFactory.cs

(开头部分) 4KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using AchieveInterfaceDAL;
using System;

namespace AchieveDALFactory
{
    /// <summary>
    /// 工厂类:创建访问数据库的实例对象
    /// </summary>
    public class DALFactory
    {
        /// <summary>
        /// 根据传入的类名获取实例对象
        /// </summary>
        private static object GetInstance(string name)
        {
            //ILog log = LogManager.GetLogger(typeof(Factory));  //初始化日志记录器

            string configName = System.Configuration.ConfigurationManager.AppSettings["DataAccess"];
            if (string.IsNullOrEmpty(configName))
            {
                //log.Fatal("没有从配置文件中获取命名空间名称!");   //Fatal致命错误,优先级最高
                throw new InvalidOperationException();    //抛错,代码不会向下执行了
            }

            string className = string.Format("{0}.{1}", configName, name);  //AchieveDAL.传入的类名name

            //加载程序集
            System.Reflection.Assembly assembly = System.Reflection.Assembly.Load(configName);
            //创建指定类型的对象实例
            return assembly.CreateInstance(className);
        }

        public static IAuthorityDAL GetAuthorityDAL()
        {
            IAuthorityDAL dal = GetInstance("Authority") as IAuthorityDAL;
            return dal;
        }

        public static IMenuDAL GetMenuDAL()
        {
            IMenuDAL dal = GetInstance("MenuDAL") as IMenuDAL;
            return dal;
        }

        public static IRoleDAL GetRoleDAL()
        {
            IRoleDAL dal = GetInstance("RoleDAL") as IRoleDAL;
            return dal;
        }

        public static IUserDAL GetUserDAL()
        {
            IUserDAL dal = GetInstance("UserDAL") as IUserDAL;
            return dal;
        }

        public static IUserRoleDAL GetUserRoleDAL()
        {
            IUserRoleDAL dal = GetInstance("UserRoleDAL") as IUserRoleDAL;
            return dal;
后面还有 87 行代码,购买后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。