123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 |
- using DBHelper;
- using Microsoft.EntityFrameworkCore;
- using Microsoft.Extensions.Configuration;
- using Microsoft.Extensions.Logging;
- using System;
- using System.Collections.Generic;
- using System.ComponentModel.DataAnnotations;
- using System.IO;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using WCS.Entity;
- using WCS.Entity.Protocol;
- using WCS.Service.Extensions;
- namespace WCS.Service
- {
- public class WCSDB : DbContext
- {
- public WCSDB()
- {
- }
- protected override void OnModelCreating(ModelBuilder modelBuilder)
- {
- base.OnModelCreating(modelBuilder);
- }
- protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
- {
- optionsBuilder.UseSqlServer(AppSettings.Config.GetConnectionString("WCSDB"));
- //optionsBuilder.UseLoggerFactory(LoggerFactory.Create(builder =>
- //{
- // builder.AddFilter((category, level) => category == DbLoggerCategory.Database.Command.Name && level == LogLevel.Information).AddConsole();
- //}));
- }
- public override int SaveChanges()
- {
- var entities = from e in ChangeTracker.Entries()
- where e.State == EntityState.Added
- || e.State == EntityState.Modified
- select e.Entity;
- List<ValidationResult> list = new List<ValidationResult>();
- foreach (var entity in entities)
- {
- var validationContext = new ValidationContext(entity);
- try
- {
- ////当前发生变更的实体是否是WCS_TASK
- //if (entity.GetType() == typeof(WCS.Entity.WCS_TASK))
- //{
- // var task = entity as WCS.Entity.WCS_TASK;
- // task.CreateStatusLog(this);
- //}
- Validator.ValidateObject(entity, validationContext);
- }
- catch (ValidationException ex)
- {
- list.Add(ex.ValidationResult);
- }
- }
- if (list.Count > 0)
- throw new EntityValidationException { EntityValidationErrors = list };
- return base.SaveChanges();
- }
- public DbSet<WCS_PLC> WCS_PLC { get; set; }
- public DbSet<WCS_DATABLOCK> WCS_DATABLOCK { get; set; }
- public DbSet<WCS_DEVICE> WCS_DEVICE { get; set; }
- public DbSet<WCS_DEVICEPROTOCOL> WCS_DEVICEPROTOCOL { get; set; }
- public DbSet<WCS_EXCEPTION> WCS_EXCEPTION { get; set; }
- public DbSet<WCS_STATION520> WCS_STATION520 { get; set; }
- public DbSet<WCS_STATION521> WCS_STATION521 { get; set; }
- public DbSet<WCS_STATION523> WCS_STATION523 { get; set; }
- public DbSet<WCS_SystemConfig> WCS_SystemConfig { get; set; }
- public DbSet<WCS_StatusLog> WCS_StatusLog { get; set; }
- public DbSet<WCS_RGV520> WCS_RGV520 { get; set; }
- public DbSet<WCS_RGV521> WCS_RGV521 { get; set; }
- public DbSet<WCS_RGV523> WCS_RGV523 { get; set; }
- public DbSet<WCS_SC520> WCS_SC520 { get; set; }
- public DbSet<WCS_SC521> WCS_SC521 { get; set; }
- public DbSet<WCS_SC537> WCS_SC537 { get; set; }
- public DbSet<WCS_BCR80> WCS_BCR80 { get; set; }
- public DbSet<WCS_CMD> WCS_CMD { get; set; }
- public DbSet<WCS_TASK> WCS_TASK { get; set; }
- public DbSet<WCS_ROUTE> WCS_ROUTE { get; set; }
- public DbSet<WCS_PATH> WCS_PATH { get; set; }
- public DbSet<WCS_Robot> WCS_Robot { get; set; }
- public DbSet<WCS_RobotStation> WCS_RobotStation { get; set; }
- public DbSet<WCS_AGVTask> WCS_AGVTask { get; set; }
- public DbSet<WCS_PATHPOINT> WCS_PATHPOINT { get; set; }
- public DbSet<WCS_Users> WCS_Users { get; set; }
- public DbSet<WCS_MAPPINGENTRY> WCS_MAPPINGENTRY { get; set; }
- }
- }
|