Blame view

HHECS.DAQClient/DataAccess/DataContext.cs 1.79 KB
唐召明 authored
1
2
using FreeSql;
using HHECS.DAQClient.Model;
唐召明 authored
3
using HHECS.EquipmentModel;
唐召明 authored
4
5
6
7
8
9
10
11
12
13
14
15
16

namespace HHECS.DAQClient.DataAccess
{
    /// <summary>
    /// 数据库上下文
    /// </summary>
    /// <remarks>参考文档:<a href="https://freesql.net/guide/db-context.html">https://freesql.net/guide/db-context.html</a></remarks>
    public sealed class DataContext : DbContext
    {
        public DbSet<CommunicationConfig> CommunicationConfigs { get; set; } = null!;

        public DbSet<Equipment> Equipment { get; set; } = null!;
唐召明 authored
17
18
19
20
21
22
23
        public DbSet<EquipmentProp> EquipmentProp { get; set; } = null!;

        public DbSet<EquipmentType> EquipmentType { get; set; } = null!;

        public DbSet<EquipmentTypePropTemplate> EquipmentTypePropTemplate { get; set; } = null!;

        public DbSet<EquipmentDataQueue> EquipmentDataQueue { get; set; } = null!;
24
25
26
27
28

        protected override void OnModelCreating(ICodeFirst codefirst)
        {
            codefirst.Entity<CommunicationConfig>(eb =>
            {
唐召明 authored
29
                eb.Property(p => p.CommunicationType).HasColumnType("varchar(50)");
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
                eb.HasData(DataSeeding.GetCommunicationConfigs());
            });

            codefirst.Entity<EquipmentType>(eb =>
            {
                eb.HasData(DataSeeding.GetEquipmentTypes());
            });

            codefirst.Entity<EquipmentTypePropTemplate>(eb =>
            {
                eb.Property(p => p.PropType).HasColumnType("varchar(50)");
                eb.Property(p => p.DataType).HasColumnType("varchar(50)");
                eb.HasData(DataSeeding.GetEquipmentTypePropTemplates());
            });

            codefirst.SyncStructure<CommunicationConfig>();
            codefirst.SyncStructure<EquipmentType>();
            codefirst.SyncStructure<EquipmentTypePropTemplate>();

        }
唐召明 authored
50
51
    }
}