zoukankan      html  css  js  c++  java
  • 设计模式之抽像工厂

     class User
        {
            private int _id;
    
            public int Id
            {
                get { return _id; }
                set { _id = value; }
            }
            private string _name;
    
            public string Name
            {
                get { return _name; }
                set { _name = value; }
            }
        }
    
        interface IUser
        {
            User GetUser(int id);
            void Insert(User user);
        }
    
        class SqlserverUser : IUser
        {
            public void Insert(User user)
            {
                Console.WriteLine("在Sql Server中给User表增加一条记录 ");
            }
    
            public User GetUser(int id)
            {
                Console.WriteLine("在Sql Server中根据ID得到User表中一条 记录");
                return null;
            }
        }
        class AccessUser : IUser
        {
            public void Insert(User user)
            {
                Console.WriteLine("在Access中给User表增加一条记录 ");
            }
    
            public User GetUser(int id)
            {
                Console.WriteLine("在Access中根据ID得到User表中一条 记录");
                return null;
            }
        }
    
        class DataAccess
        {
            private static readonly string AssemblyName = "程序集名称";
            private static readonly string db = "Sqlserver";  //读配置文件
    
            public static IUser CreateUser()
            {
                string className = AssemblyName + "." + db + "User";
                IUser _user = (IUser)Assembly.Load(AssemblyName).CreateInstance(className);
                return _user;
            }
        }
    
    
        class Program
        {
            static void Main(string[] args)
            {
                User user = new User();
    
                IUser su = DataAccess.CreateUser();
    
                su.Insert(user);
                su.GetUser(1);
    
                Console.ReadKey();
            }
        }
    
  • 相关阅读:
    DP_knapsack
    也谈交换两个变量
    SidebySide Assembly
    Generate permutation for N elements
    Pixel Shader 像素着色
    Drill into View Matrix
    使用D3DXCreateSphere绘图的步骤
    原来VisualStudio本身也可以查看调试信息
    DirectX Effects初探
    Shortcuts
  • 原文地址:https://www.cnblogs.com/xdpxyxy/p/3058626.html
Copyright © 2011-2022 走看看