Множественный первичный ключ с asp .net mvc 3 - PullRequest
45 голосов
/ 11 мая 2011

Я использую asp .net mvc 3, и у меня проблема с сущностью, содержащей 2 первичных ключа, когда я пытаюсь вставить данные в таблицу.

 public class LineItem
    {
        [Key]
        public int OrderId { get; set;}
        [Key]
        public int LineNum  { get; set;}
        public string ItemId { get; set;}
        public int Quantity { get; set;}
        public decimal UnitPrice { get; set; }

    }

, когда я пытаюсьвставить Я получил эту ошибку:

Невозможно определить порядок составного первичного ключа для типа «ApplicationMVC3.Models.LineItem».Используйте ColumnAttribute или метод HasKey, чтобы указать порядок составных первичных ключей.

Может кто-нибудь мне помочь, пожалуйста !!

1 Ответ

73 голосов
/ 11 мая 2011

Предполагая, что это на самом деле составной ключ, поскольку у вас не может быть 2 первичных ключей ... Сообщение об ошибке сообщает вам, что именно нужно сделать, а именно добавить заказ. Вы можете сделать это, добавив [Column(Order = 0)] и [Column(Order = 1)] к своим ключевым столбцам.

Для вашего примера:

public class LineItem
    {
        [Key][Column(Order = 0)]
        public int OrderId { get; set;}
        [Key][Column(Order = 1)]
        public int LineNum  { get; set;}
        public string ItemId { get; set;}
        public int Quantity { get; set;}
        public decimal UnitPrice { get; set; }

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