Entity Framework: поле составного ключа не может быть обнуляемым ?

У меня есть модель с составным ключом - строка является ключом:

public class Item
{
    [Key, Column(Order = 0)]
    public int UserId { get; set; }
    [Key, Column(Order = 1)]
    public DateTime? Date { get; set; }
}

Выполнение кода ниже вызывает исключение DbEntityValidationExceptionс сообщением: Поле даты требуется. :

var it = new Item { Date = null, UserId = 2 };
m_Entities.Items.Add(it);
m_Entities.SaveChanges(); // throws exception

(m_Entitiesобычно DbContextпотомок с элементами, определенными как DbSet) Почему требуется Date, если он может быть null(объявлен как DateTime?)? И как разрешить nullбыть допустимым значением для Date?

17
задан Zoka 4 June 2012 в 20:43
поделиться