wxw
2 天以前 2db77d2cfc617aacefc05f0c946e34e85be8e434
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
using System;
using System.Collections.Generic;
using System.Reflection;
using System.Text;
using SqlSugar;
 
namespace WMS.Entity.Context
{
    public class DataContext
    {
        public static readonly SqlSugarScope Db = new SqlSugarScope(new ConnectionConfig()
        {
            ConnectionString = BaseDbConfig.ConnectionString,
            //ConnectionString = "Data Source=.;Initial Catalog=WMS_V01;Integrated Security=True",
            //ConnectionString = "Data Source=DESKTOP-0EJDG95\\MSSQLSERVER1;Initial Catalog=WMS_V01;Integrated Security=True",
            DbType = DbType.SqlServer, //数据库类型
            IsAutoCloseConnection = true, //自动释放
            InitKeyType = InitKeyType.Attribute //根据实体类取发现主键
        }, db => {
            //(A)全局生效配置点,一般AOP和程序启动的配置扔这里面 ,所有上下文生效
            //调试SQL事件,可以删掉
            db.Aop.OnLogExecuting = (sql, pars) =>
            {
 
                //获取原生SQL推荐 5.1.4.63  性能OK
                //Console.WriteLine(UtilMethods.GetNativeSql(sql, pars));
 
                //获取无参数化SQL 对性能有影响,特别大的SQL参数多的,调试使用
                Console.WriteLine(UtilMethods.GetSqlString(DbType.SqlServer, sql, pars));
 
            };
 
            //多个配置就写下面
            //db.Ado.IsDisableMasterSlaveSeparation=true;
 
            //注意多租户 有几个设置几个
            //db.GetConnection(i).Aop
        });
 
        public DataContext()
        {
            //Db = new SqlSugarScope(new ConnectionConfig()
            //{
            //    //ConnectionString = "server=.;database=WMS_V01;uid=sa;pwd=sa",
            //    ConnectionString = "Data Source=.;Initial Catalog=WMS_V01;Integrated Security=True",
            //    DbType = DbType.SqlServer, //数据库类型
            //    IsAutoCloseConnection = true, //自动释放
            //    InitKeyType = InitKeyType.Attribute //根据实体类取发现主键
            //});
        }
 
        //第一次创建数据库实体时用到、后面注释就行
        public void Init()
        {
            ////入库
            //var luJing = "E:\\WMSJC09Gitee\\Wms_09\\WMS.Entity\\BllAsnEntity";
            //var yinYong = "WMS.Entity.BllAsnEntity";
            //Db.DbFirst.IsCreateAttribute().Where("BllArrivalNotice").CreateClassFile(luJing, yinYong);
            //Db.DbFirst.IsCreateAttribute().Where("BllArrivalNoticeDetail").CreateClassFile(luJing, yinYong);
            //Db.DbFirst.IsCreateAttribute().Where("BllPalletBind").CreateClassFile(luJing, yinYong); 
            //Db.DbFirst.IsCreateAttribute().Where("BllBoxInfo").CreateClassFile(luJing, yinYong);
            //Db.DbFirst.IsCreateAttribute().Where("BllPalletUnbind").CreateClassFile(luJing, yinYong);
            ////库存
            //var luJing1 = "E:\\WMSJC09Gitee\\Wms_09\\WMS.Entity\\DataEntity";
            //var yinYong1 = "WMS.Entity.DataEntity";
            //Db.DbFirst.IsCreateAttribute().Where("DataStockDetail").CreateClassFile(luJing1, yinYong1);
            //Db.DbFirst.IsCreateAttribute().Where("DataBoxInfo").CreateClassFile(luJing1, yinYong1);
            ////出库
            //var luJing2 = "E:\\WMSJC09Gitee\\Wms_09\\WMS.Entity\\BllSoEntity";
            //var yinYong2 = "WMS.Entity.BllSoEntity";
            //Db.DbFirst.IsCreateAttribute().Where("BllExportAllot").CreateClassFile(luJing2, yinYong2);
            //Db.DbFirst.IsCreateAttribute().Where("BllCompleteDetail").CreateClassFile(luJing2, yinYong2);
            //Db.DbFirst.IsCreateAttribute().Where("BLLWaveMage").CreateClassFile(luJing2, yinYong2);
            ////日志
            //var luJing3 = "E:\\WMSJC09Gitee\\Wms_09\\WMS.Entity\\LogEntity";
            //var yinYong3 = "WMS.Entity.LogEntity";
            //Db.DbFirst.IsCreateAttribute().Where("LogOperationASN").CreateClassFile(luJing3, yinYong3);
            //Db.DbFirst.IsCreateAttribute().Where("LogOperationSO").CreateClassFile(luJing3, yinYong3);
            //Db.DbFirst.IsCreateAttribute().Where("LogOperationCR").CreateClassFile(luJing3, yinYong3);
            //Db.DbFirst.IsCreateAttribute().Where("LogTask").CreateClassFile(luJing3, yinYong3);
            // 质量请验
            //var qingyan = "D:\\执行中项目\\JC23\\JC23WMS\\Wms\\WMS.Entity\\BllQualityEntity";
            //var qingyan1 = "WMS.Entity.BllQualityEntity";
            //Db.DbFirst.IsCreateAttribute().Where("BllSamplingDetails").CreateClassFile(qingyan, qingyan1);
            //Db.DbFirst.IsCreateAttribute().Where("BllQualityInspectionRequest").CreateClassFile(qingyan, qingyan1);
            ////移
            //var luJing4 = "E:\\WMSJC09Gitee\\Wms_09\\WMS.Entity\\BllMoveEntity";
            //var yinYong4 = "WMS.Entity.BllMoveEntity";
            //Db.DbFirst.IsCreateAttribute().Where("BllPalletMove").CreateClassFile(luJing4, yinYong4);
            ////盘、
            //var luJing5 = "E:\\WMSJC09Gitee\\Wms_09\\WMS.Entity\\BllCheckEntity";
            //var yinYong5 = "WMS.Entity.BllCheckEntity";
            //Db.DbFirst.IsCreateAttribute().Where("BllStockCheck").CreateClassFile(luJing5, yinYong5);
            //Db.DbFirst.IsCreateAttribute().Where("BllStockCheckDetail").CreateClassFile(luJing5, yinYong5);
            //Db.DbFirst.IsCreateAttribute().Where("BllStockCheckLog").CreateClassFile(luJing5, yinYong5);
            ////移
            //var luJing6 = "E:\\WMSJC09Gitee\\Wms_09\\WMS.Entity\\BllQualityEntity";
            //var yinYong6 = "WMS.Entity.BllQualityEntity";
            //Db.DbFirst.IsCreateAttribute().Where("BllQualityInspect").CreateClassFile(luJing6, yinYong6);
 
 
            //Db.DbMaintenance.CreateDatabase();
            //Assembly assembly = Assembly.Load("AoLian.Model");
 
            //foreach (var item in assembly.GetTypes())
            //{
            //    if (item.Name == "AoLianContext") continue;
            //    if (item.Name != "BaseEntity")
            //    {
            //        Db.CodeFirst.InitTables(item);
            //    }
            //}
 
        }
    }
 
    public class BaseDbConfig
    {
        /// <summary>
        /// 数据库连接字符串
        /// </summary>
        public static string ConnectionString { get; set; }
 
    }
}