static void Test2() { //var sb = new StringBuilder(); //sb.Append("HelloWorld"); //sb.Length--; //sb.Append("Stone"); //Console.WriteLine(sb.ToString()); //DAL.AddConnStr("Log", "Data Source=tcp://127.0.0.1/ORCL;User Id=scott;Password=tiger;UseParameter=true", null, "Oracle"); //DAL.AddConnStr("Log", "Server=.;Port=3306;Database=Log;Uid=root;Pwd=root;", null, "MySql"); //DAL.AddConnStr("Membership", "Server=.;Port=3306;Database=times;Uid=root;Pwd=Pass@word;TablePrefix=xx_", null, "MySql"); DAL.AddConnStr("Log", @"Server=.\JSQL2008;User ID=sa;Password=sa;Database=Log;", null, "sqlserver"); var gs = UserX.FindAll(null, null, null, 0, 10); Console.WriteLine(gs.First().Logins); var count = UserX.FindCount(); Console.WriteLine("Count={0}", count); LogProvider.Provider.WriteLog("test", "新增", "学无先后达者为师"); LogProvider.Provider.WriteLog("test", "新增", "学无先后达者为师"); LogProvider.Provider.WriteLog("test", "新增", "学无先后达者为师"); var list = new List <UserX>(); for (var i = 0; i < 4; i++) { var entity = new UserX { Name = "Stone", DisplayName = "大石头", Logins = 1, LastLogin = DateTime.Now, RegisterTime = DateTime.Now }; list.Add(entity); entity.SaveAsync(); //entity.InsertOrUpdate(); } //list.Save(); var user = gs.First(); user.Logins++; user.SaveAsync(); count = UserX.FindCount(); Console.WriteLine("Count={0}", count); gs = UserX.FindAll(null, null, null, 0, 10); Console.WriteLine(gs.First().Logins); }
static void Test7() { var dal = UserX.Meta.Session.Dal; dal.Db.DataCache = 3; var list = UserX.FindAll(); var u = UserX.FindByID(1); var n = UserX.FindCount(); var sql = "select * from user"; var ds = dal.Select(sql); ds = dal.Select(sql, CommandType.Text); ds = dal.Select(sql, CommandType.Text, new Dictionary <String, Object>()); var dt = dal.Query(sql, new Dictionary <String, Object>()); n = dal.SelectCount(sql, CommandType.Text); var sb = SelectBuilder.Create("select roleid,count(*) from user group by roleid order by count(*) desc"); ds = dal.Select(sb, 3, 5); dt = dal.Query(sb, 4, 6); n = dal.SelectCount(sb); for (var i = 0; i < 10; i++) { Console.WriteLine(i); list = UserX.FindAll(); u = UserX.FindByKey(1); n = UserX.FindCount(); ds = dal.Select(sql); ds = dal.Select(sql, CommandType.Text); ds = dal.Select(sql, CommandType.Text, new Dictionary <String, Object>()); dt = dal.Query(sql, new Dictionary <String, Object>()); n = dal.SelectCount(sql, CommandType.Text); ds = dal.Select(sb, 3, 5); dt = dal.Query(sb, 4, 6); n = dal.SelectCount(sb); Thread.Sleep(1000); } }
static void Test4() { //var list = Role.FindAll(); //Console.WriteLine(list.Count); var gs = UserX.FindAll(null, null, null, 0, 10); Console.WriteLine(gs.First().Logins); var count = UserX.FindCount(); Console.WriteLine("Count={0}", count); LogProvider.Provider.WriteLog("test", "新增", "学无先后达者为师"); LogProvider.Provider.WriteLog("test", "新增", "学无先后达者为师"); LogProvider.Provider.WriteLog("test", "新增", "学无先后达者为师"); var list = new List <UserX>(); for (var i = 0; i < 4; i++) { var entity = new UserX { Name = "Stone", DisplayName = "大石头", Logins = 1, LastLogin = DateTime.Now, RegisterTime = DateTime.Now }; list.Add(entity); entity.SaveAsync(); //entity.InsertOrUpdate(); } //list.Save(); var user = gs.First(); user.Logins++; user.SaveAsync(); count = UserX.FindCount(); Console.WriteLine("Count={0}", count); gs = UserX.FindAll(null, null, null, 0, 10); Console.WriteLine(gs.First().Logins); }
static void Test7() { var set = XCode.Setting.Current; //set.Debug = true; set.ShowSQL = false; //XCode.Cache.CacheBase.Debug = true; var dal = UserX.Meta.Session.Dal; dal.Db.DataCache = 3; var list = UserX.FindAll(null, null, null, 1, 20); var u = UserX.FindByKey(1); var n = UserX.FindCount(); Console.WriteLine("总数据:{0:n0}", n); //using (var tr = UserX.Meta.CreateTrans()) //{ // u = new UserX // { // Name = Rand.NextString(8), // DisplayName = Rand.NextString(16) // }; // u.Insert(); // if (Rand.Next(2) == 1) tr.Commit(); //} Task.Run(() => { var us = new List <UserX>(); for (var i = 0; i < 1_000_000; i++) { var entity = new UserX { Name = Rand.NextString(8), DisplayName = Rand.NextString(16) }; us.Add(entity); } us.Insert(true); }); var sql = "select * from user limit 20"; var ds = dal.Select(sql); ds = dal.Select(sql, CommandType.Text); ds = dal.Select(sql, CommandType.Text, new Dictionary <String, Object>()); var dt = dal.Query(sql, new Dictionary <String, Object>()); n = dal.SelectCount(sql, CommandType.Text); var sb = SelectBuilder.Create("select roleid,count(*) from user group by roleid order by count(*) desc"); ds = dal.Select(sb, 3, 5); dt = dal.Query(sb, 4, 6); n = dal.SelectCount(sb); for (var i = 0; i < 20; i++) { //Console.WriteLine(i); var sw = Stopwatch.StartNew(); list = UserX.FindAll(null, null, null, 1, 20); u = UserX.FindByKey(1); n = UserX.FindCount(); ds = dal.Select(sql); ds = dal.Select(sql, CommandType.Text); ds = dal.Select(sql, CommandType.Text, new Dictionary <String, Object>()); dt = dal.Query(sql, new Dictionary <String, Object>()); n = dal.SelectCount(sql, CommandType.Text); ds = dal.Select(sb, 3, 5); dt = dal.Query(sb, 4, 6); n = dal.SelectCount(sb); sw.Stop(); XTrace.WriteLine("{0} {1:n0}us", i, sw.Elapsed.TotalMilliseconds * 1000); Thread.Sleep(1000); } }
/// <summary> /// 测试ActvieMQ 消息发布与订阅 /// </summary> /// <param name="isServer"></param> private static void TestEventBus(MQTypeEnum mqType, Boolean isServer = true) { Console.WriteLine("消息测试:1,消息发布;2,消息订阅"); isServer = Console.ReadKey().KeyChar == '1'; var topic1 = "Topic.Test"; var topic2 = "Topic.Admin.User"; IEventBus eventbus; switch (mqType) { case MQTypeEnum.ActiveMQ: eventbus = new ActiveMQEventBus(); break; case MQTypeEnum.RabbitMQ: eventbus = new RabbitMQEventBus(); break; default: eventbus = new RabbitMQEventBus(); break; } Int64 userid = UserX.FindCount() + 1; TimerX timer; if (isServer) { timer = new TimerX((Object state) => { try { var time = DateTime.Now; eventbus.Publish(topic1, new EventMessage() { Action = "Test", Body = "学无先后达者为师" }); Console.WriteLine($"{time} 发送了一条消息,主题为:{topic1}"); // 实体消息测试 long tick = DateTime.Now.Ticks; var rd = new Random((Int32)(tick & 0xFFFFFFFFL) | (Int32)(tick >> 32)); var user = new UserX() { Name = "User" + rd.Next(), DisplayName = $"{Enum.GetName(typeof(MQTypeEnum), eventbus.MQType)}_{userid++}", Code = userid.ToString().PadLeft(7, '0') }; //user.SaveAsync(); // 向数据库中插入数据 eventbus.PublishAsync(topic2, new EventMessage() { Action = "Insert", Body = user.ToJson() }); } catch (Exception ex) { XTrace.WriteException(ex); throw ex; } }, null, 10, 10); } else { var handler = new EventBusHandler(); eventbus.Subscribe(topic1, handler); eventbus.SubscribeAsync(topic2, new MyHandler()); } }