Изменение столбца с шаблоном «Идентичность» не поддерживается.Колонка: «ID».Таблица: «CodeFirstDatabaseSchema.BidTo» - PullRequest
0 голосов
/ 22 мая 2018

До сегодняшнего утра этой проблемы не было.Однако теперь, когда я пытаюсь вставить в таблицу поле идентификации, которое не является первичным ключом, я получаю вышеуказанную ошибку.

Конфигурация:

    public BidToConfiguration()
    {
        ToTable("BidTo");

        HasKey(bt => new { bt.BidRecipientCode, bt.ProposalNumber });

        Property(bt => bt.Awarded)
            .IsOptional();
        Property(bt => bt.BidRecipientCode)
            .IsRequired()
            .HasMaxLength(10);
        Property(bt => bt.BidValue)
            .IsRequired();
        Property(bt => bt.ContactEmail)
            .IsOptional()
            .HasMaxLength(150);
        Property(bt => bt.ContactName)
            .IsOptional()
            .HasMaxLength(150);
        Property(bt => bt.ContactPhone)
            .IsOptional()
            .HasMaxLength(25);
        Property(bt => bt.ID)
            .IsRequired()
            .HasDatabaseGeneratedOption(System.ComponentModel.DataAnnotations.Schema.DatabaseGeneratedOption.Identity);
        Property(bt => bt.LastChanged)
            .IsRequired();
        Property(bt => bt.LastChangedBy)
            .IsRequired()
            .HasMaxLength(50);
        Property(bt => bt.ProposalNumber)
            .IsRequired()
            .HasMaxLength(15);
        Property(bt => bt.ReqForBidNumber)
            .IsOptional()
            .HasMaxLength(50);

        HasRequired(bt => bt.BidRecipient)
            .WithMany(br => br.BidTos)
            .HasForeignKey(bt => bt.BidRecipientCode);
    }

Вставить в эту таблицу:

                    BidTo newBidTo = new BidTo();

                    newBidTo.Awarded = bt.Awarded;
                    newBidTo.BidRecipientCode = bt.BidRecipientCode;
                    newBidTo.BidValue = bt.BidValue;
                    newBidTo.ContactEmail = bt.ContactEmail;
                    newBidTo.ContactName = bt.ContactName;
                    newBidTo.ContactPhone = bt.ContactPhone;
                    newBidTo.ID = bt.ID;
                    newBidTo.LastChanged = DateTime.Now;
                    newBidTo.LastChangedBy = User.Identity.Name;
                    newBidTo.ProposalNumber = proposal.ProposalNumber;
                    newBidTo.ReqForBidNumber = bt.ReqForBidNumber;

                    _dbpm.BidTos.Add(newBidTo);

Когда я выполняю context.SaveChanges (), я получаю ошибку независимо от того, есть ли у меня строка «newBidTo.ID = bt.ID;»закомментировано или нет.

ДОБАВЛЕНО: одна заметка, эта таблица, но не две другие с той же ошибкой, имеет триггер INSERT / UPDATE / DELETE.

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