using CSFramework.DB;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
namespace CSFramework.DBTester
{
static class Program
{
///
/// 应用程序的主入口点。
///
[STAThread]
static void Main()
{
Application.ThreadException += Application_ThreadException;
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
////isid是自增字段
//sys_Log log = new sys_Log
//{
// DocNo = "doc0123412341234",
// GUID32 = "2345234523452435",
// LogDate = DateTime.Now,
// LogUser = "admin",
// OPType = 1,
//};
var conn = "Server=.;Database=CSFrameworkV5_Normal;User ID=sa;Password=test; Max Pool Size=512; Pooling=true;Connect Timeout=30";
IDatabase db = DatabaseFactory.CreateSqlDatabase(conn);
var list = db.meta_GetStoreProcList();
return;
////实例化DbCommand生成器
//DbCommandGenerator g = new DbCommandGenerator(db);
////测试案例1 - 获取标识有特性(Attribute)的字段
//var list = g.GetAttributeFields(typeof(sys_Log), typeof(KeyField));
//var list2 = g.GetAttributeFields(typeof(sys_Log), typeof(IgnoreField));
////测试案例2
//var m5 = g.GetTableName(typeof(sys_Log));
//var m1 = g.GetDeleteCommand(typeof(sys_Log));
//var m2 = g.GetDeleteCommand(log);
//var m3 = g.GetInsertCommand(typeof(sys_Log));
//var m4 = g.GetInsertCommand(log);
//var m6 = g.GetUpdateCommand(typeof(sys_Log));
//var m7 = g.GetUpdateCommand(log);
//new DbFramework(db).AddObject(log, new string[] { "isid", "DocNo" });//旧的使用方法
//new DbFramework(db).AddObject(log, "isid", "DocNo"); //新方法:params 参数形式
//List list2 = new DbFramework(db).Select();//新增功能:返回所有对象
//sys_Log one = new DbFramework(db).Select("isid", 1);//新增功能:根据关键字返回一个对象
//byte[] ts = new byte[] { 0, 0, 0, 0, 0, 20, 12, 229 };
//var s = TimeStampTool.TimestampToString(ts);
//var st = TimeStampTool.strToHexByte(s);
//var d1 = TimeStampTool.FromBytes(ts);
//long lo = Math.Abs(BitConverter.ToInt64(ts, 0));
//var ss = TimeSpan.FromTicks(lo);
//string sql = "select * from aaa汉字表";
//if (sql.Substring(sql.Length - 1, 1) != ";") sql = sql + ";";
Application.Run(new frmTestDB());
//Application.Run(new frmSQLConcurrentTester());
}
private static void Application_ThreadException(object sender, System.Threading.ThreadExceptionEventArgs e)
{
MessageBox.Show(e.Exception.Message, "", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}