Почему EF Core не позволяет мне создать свойство без первичного ключа? - PullRequest
0 голосов
/ 23 октября 2018

Я новичок в EF Core и пытаюсь добавить перечисление / строковое значение в качестве столбца в моей таблице Order, чтобы иметь возможность иметь текстовый статус в моем коде, как показано ниже, и сохранять его как строку в БД.,Но когда я пытаюсь запустить миграцию после добавления свойства OrderStatus, я получаю эту ошибку:

Для типа объекта OrderStatus требуется определить первичный ключ.

Я понимаю сообщение об ошибке, но как добавить в сущность EF Core свойство, позволяющее просто сохранить строку в столбце?

Код вызова:

   var order = new Order();
   order.OrderStatus = OrderStatus.Ongoing;

Класс enum:

public class OrderStatus : Enumeration
{
    public static readonly OrderStatus Ongoing 
        = new OrderStatus(0, "Ongoing");

    private OrderStatus() { }
    private OrderStatus(int value, string displayName) : base(value, displayName) { }
}

Класс:

public class Order : EntityBase
{
    public int OrderId { get; set; }
    public OrderStatus OrderStatus { get; set; }
    public DateTime OrderDate { get; set; }
}
...