Gerekli bir alan alanını kullanarak bir veritabanı tablosu oluşturuyorum. Ancak, tabloyu beslerken, enum alanını beslemek için atlamak mümkündür: EF herhangi bir hata mesajı atmayacak ancak alanı 0 değeriyle besleyecektir. Neler olduğunu anlamama yardım edebilir misin? TeşekkürEntity Framework 6 Kod İlk - Gerekli Enum veri türü çalışmıyor
public enum TestEnum {
test1=1,
test2=2,
test3=3,
test4=4
}
public class TestEnumClass
{
[Key]
public int id { get; set; }
[Required(ErrorMessage = "Required"), Display(Name = "Test Enum")]
public TestEnum test{ get; set; }
}
ve tüm, ama bu yöntem, satırda hataya neden olabilecek bilgileri çoğaltır. Örneğin, test5'i "TestEnum" öğesine eklerseniz, 'TestEnum' özelliğine sahip herhangi bir EF nesnesindeki aralığı değiştirmeyi hatırlamalıyım. – Joe
@Joe: Doğrulama özelliğini bu gibi ayarlayın [Aralık (1, int.MaxValue), Ekran (Ad = "Test Enum")] ve yanlış bir int- değeri el ile girilir, eğer gerçekten ihtiyacınız varsa, bu gibi durumlarda savunmak için özel doğrulama ekleyebiliriz. Örneğin TestEnumClass uygulaması IValidateObject. Hiçbir değer verilmediğinde 0 değeri varsayılan değerdir, sıfırdan büyük pozitif tamsayılar manuel olarak girilmelidir. –