1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- using DBHelper;
- using Microsoft.EntityFrameworkCore;
- using Microsoft.Extensions.Configuration;
- 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;
- namespace WCS.Service
- {
- public class WCSDB : DbContext
- {
- private IConfiguration configuration;
- public WCSDB()
- {
- configuration = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json").Build();
- }
- protected override void OnModelCreating(ModelBuilder modelBuilder)
- {
- base.OnModelCreating(modelBuilder);
- }
- protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
- {
- optionsBuilder.UseSqlServer(configuration.GetConnectionString("db"));
- }
- 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
- {
- 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_DEVICEITEM { get; set; }
- public DbSet<WCS_EXCEPTION> WCS_EXCEPTION { get; set; }
- public DbSet<WCS_STATIONDATA> WCS_STATIONDATA { get; set; }
- public DbSet<WCS_STATIONSTATUSDATA> WCS_STATIONSTATUSDATA { get; set; }
- public DbSet<WCS_BCRDATA> WCS_BCRDATA { get; set; }
- public DbSet<WCS_CMD> WCS_CMD { get; set; }
- }
- }
|