EF 6 + представления
От: namespace  
Дата: 25.10.16 08:42
Оценка:
Регулярно наступаю на грабли при использовании 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; }
}
Re: EF 6 + представления
От: TK Лес кывт.рф
Дата: 27.10.16 07:16
Оценка:
Здравствуйте, namespace, Вы писали:

N>Регулярно наступаю на грабли при использовании EF с представлениями без ключа. Устал дебажить.


N>Если неправильно выставить атрибут [Column(Order = 1)], то все работает, но данные возвращаются неверные.

N>Если установить атрибут на большее количество колонок, или даже на все — начинает валится где-то внутри EF c NullReferenceException.

А вы данные запрашиваете как AsNoTracking()?
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.