Tôi đang sử dụng khung thực thể cơ sở dữ liệu đầu tiên 6. Sau khi thay đổi một số bảng trong lược đồ của tôi thành bảng thời gian, tôi bắt đầu nhận được lỗi sau khi cố gắng chèn dữ liệu mới:Khung thực thể không hoạt động với bảng thời gian
Cannot insert an explicit value into a GENERATED ALWAYS column in table '<MyDatabase>.dbo.<MyTableName>. Use INSERT with a column list to exclude the GENERATED ALWAYS column, or insert a DEFAULT into GENERATED ALWAYS column.
Có vẻ như EF đang cố cập nhật giá trị của các cột PERIOD
do hệ thống quản lý.
Xóa các cột khỏi tệp EDMX dường như khắc phục được sự cố, nhưng đây không phải là giải pháp khả thi do các cột được thêm lại mỗi lần mô hình được tạo lại từ cơ sở dữ liệu.
Tôi có thể làm điều tương tự với lõi khung thực thể như thế nào? –
@AramGevorgyan - Bạn có thể sử dụng thuộc tính [DatabaseGenerated (DatabaseGeneratedOption.Computed)] trên thuộc tính hoặc sử dụng phương thức Fluent API .ValueGeneratedOnAddOrUpdate() ví dụ: entity.Property (e => e.ValidFrom) .ValueGeneratedOnAddOrUpdate(); [xem tại đây] (http://www.learnentityframeworkcore.com/configuration/data-annotation-attributes/databasegenerated-attribute) để tham khảo. –
Làm việc như một sự quyến rũ! 'Usings' là như sau' using System.Data.Entity.Infrastructure.Interception; bằng System.Data.Entity.Core.Common.CommandTrees; bằng System.Data.Entity.Core.Metadata.Edm; sử dụng System.Collections.ObjectModel; ' – mike123