Как вставить, обновить и удалить данные с видом - PullRequest
0 голосов
/ 03 мая 2020

Я хочу получать, обновлять, удалять и вставлять данные в представление. Пока что я могу получать и обновлять данные из представления. Я использую Entity Framework Core 2.1 версии.

Это модель представления:

public partial class vwVacation: IEntity
    {
        public int EmployeeId { get; private set; }
        public string EmployeeName { get; private set; }
        public string EmployeeSurName { get; private set; }        
        public string EmployeeOccupation { get; private set; }
        public string EmployeePhone { get; private set; }
        public string EmployeeEmail { get; private set; }
        public int HeadQuartersId { get; private set; }
        public string HeadQuartersName { get; private set; }
        public string HeadQuartersCode { get; private set; }
        public int VacationId { get; set; }
        public int VacationTypeId { get; set; }
        public string VacationType{ get; private set; }
        [Column("HistoryId")]
        public int Id { get; set; }
        public DateTime StartDate { get; set; }
        public DateTime EndDate { get; set; }
        public int VacationDaysTake{ get; set; }
        public bool IsApproved { get; set; }
    }

Это код, который я пишу в контексте сущности:

 public virtual DbSet<vwVacation> vwVacation{ get; set; }

  protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
modelBuilder.Entity<vwVacation>(entity =>
            {
                entity.HasKey(e => e.Id);

                entity.Property(e => e.EndDate).HasColumnType("datetime");

                entity.Property(e => e.StartDate).HasColumnType("datetime");

                entity.Property(e => e.IsApproved)
                   .HasColumnType("bit")
                   .HasDefaultValueSql("('0')");             

                entity.ToTable("vwVacation");

                entity.Property(e => e.EmployeeId)
                 .Metadata.AfterSaveBehavior = PropertySaveBehavior.Throw;                 

                entity.Property(e => e.EmployeeName)
                 .Metadata.AfterSaveBehavior = PropertySaveBehavior.Throw;

                entity.Property(e => e.EmployeeSurName)
                 .Metadata.AfterSaveBehavior = PropertySaveBehavior.Throw;

                entity.Property(e => e.EmployeeOccupation)
                 .Metadata.AfterSaveBehavior = PropertySaveBehavior.Throw;

                entity.Property(e => e.EmployeePhone)
                 .Metadata.AfterSaveBehavior = PropertySaveBehavior.Throw;

                entity.Property(e => e.EmployeeEmail)
                 .Metadata.AfterSaveBehavior = PropertySaveBehavior.Throw;

                entity.Property(e => e.HeadQuartersId)
                 .Metadata.AfterSaveBehavior = PropertySaveBehavior.Throw;

                entity.Property(e => e.HeadQuartersName)
                 .Metadata.AfterSaveBehavior = PropertySaveBehavior.Throw;

                entity.Property(e => e.HeadQuartersCode)
                 .Metadata.AfterSaveBehavior = PropertySaveBehavior.Throw;             

                entity.Property(e => e.VacationType)
                 .Metadata.AfterSaveBehavior = PropertySaveBehavior.Throw;
            });
        }

Что мне нужно сделать, чтобы вставить данные в мое представление, и структура сущности знает, какой столбец предназначен для вставки, а какой - только для чтения?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...