Регулярно наступаю на грабли при использовании EF с представлениями без ключа. Устал дебажить.
Если неправильно выставить атрибут [Column(Order = 1)], то все работает, но данные возвращаются неверные.
Если установить атрибут на большее количество колонок, или даже на все — начинает валится где-то внутри EF c NullReferenceException.
Решение — добавить псевдоключ в представление, но оно мне не нравится.
Можно это как-нибудь красиво сделать?
[Table("myView")]
public class Class1
{
[Key]
[Column(Order = 1)]
public string field1 { get; set; }
[Key]
[Column(Order = 2)]
public string field2 { get; set; }
}
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.