私は複合キーでモデルを持っている - 行がキーである:The Date field is required.
:Entity Framework:コンポジットキーのフィールドをnullにすることはできませんか?
var it = new Item { Date = null, UserId = 2 };
m_Entities.Items.Add(it);
m_Entities.SaveChanges(); // throws exception
(m_Entities
が通常であるDbContext
子孫は、メッセージと例外DbEntityValidationException
をスローの下
public class Item
{
[Key, Column(Order = 0)]
public int UserId { get; set; }
[Key, Column(Order = 1)]
public DateTime? Date { get; set; }
}
は、コードを実行します項目がDbSet<Item>
と定義されています) null
(DateTime?
と宣言されています)の場合には、Date
が必要なのはなぜですか?また、null
をDate
の有効な値にする方法を教えてください。
まあは、主キーは{ユーザーID、日付}です。それはどこの日付がnullableであることが保証されているのですか?そうでないのはなぜですか?あなたのステートメントに同意しないでください。 – Zoka