Пример #1
0
        static void Main(string[] args)
        {
            //注册数据库连接
            IDbConnection db0 = new MySqlConnection(ConfigurationManager.ConnectionStrings["db0"].ConnectionString);
            IDbConnection db1 = new MySqlConnection(ConfigurationManager.ConnectionStrings["db1"].ConnectionString);
            IDbConnection db2 = new MySqlConnection(ConfigurationManager.ConnectionStrings["db2"].ConnectionString);

            Dictionary <string, IDbConnection> connectionDic = new Dictionary <string, IDbConnection>();

            connectionDic.Add("0", db0);
            connectionDic.Add("1", db1);
            connectionDic.Add("2", db2);

            ShardingConnUtils.RegisConnGroup(connectionDic);


            //测试
            User user = new User();

            user.Id       = 3;
            user.UserName = "******";

            UserRepertory userRepertory = new UserRepertory();

            userRepertory.AddUser(user);

            User user2 = userRepertory.GetUserById(3);

            Console.WriteLine(user2.UserName);
        }
Пример #2
0
        public bool AddUser([ShardingKey(Keys = "Id")] User user)
        {
            IDbConnection connection = ShardingConnUtils.GetConnection(); //侵入代码,但也仅此一行,无论怎样,数据库操作都是要获取数据库连接

            int count = connection.Execute("insert into user value(@Id,@UserName)", user);

            return(count > 0);
        }
Пример #3
0
        public User GetUserById([ShardingKey] int Id)
        {
            IDbConnection connection = ShardingConnUtils.GetConnection();

            List <User> users = connection.Query <User>("select * from user where Id=@Id", new { Id = Id }).ToList();

            if (users.Count > 0)
            {
                return(users[0]);
            }
            return(null);
        }
Пример #4
0
        static void Main(string[] args)
        {
            //注册数据库连接
            IDbConnection db0 = new MySqlConnection(ConfigurationManager.ConnectionStrings["db0"].ConnectionString);
            IDbConnection db1 = new MySqlConnection(ConfigurationManager.ConnectionStrings["db1"].ConnectionString);
            IDbConnection db2 = new MySqlConnection(ConfigurationManager.ConnectionStrings["db2"].ConnectionString);

            Dictionary <string, IDbConnection> connectionDic = new Dictionary <string, IDbConnection>();

            connectionDic.Add("0", db0);
            connectionDic.Add("1", db1);
            connectionDic.Add("2", db2);

            ShardingConnUtils.RegisConnGroup(connectionDic);



            Enumerable.Range(1, 500).ToList().ForEach(a =>
            {
                //测试
                User user     = new User();
                user.Id       = a;
                user.UserName = "******" + a;

                UserRepertory userRepertory = new UserRepertory();
                User user2 = userRepertory.GetUserById(a);
                if (user2 == null)
                {
                    userRepertory.AddUser(user);
                }
                else
                {
                    Console.WriteLine(user2.UserName + "已存在!");
                }
            });


            Console.ReadKey();
        }