Организации сущности, а не на карту имущество в запросеC#

Место общения программистов C#
Anonymous
 Организации сущности, а не на карту имущество в запросе

Сообщение Anonymous »

I'm creating an entity model in which I want to put a not mapped properties. These properties are there to simplify access to values from relationship. Model shown is just a simple example.
Изображение


In users_roles entity, named UserRole, I want to have UserName property and RoleName.

public class UserRole
{
public int Id { get; set; }
public int IdUser { get; set; }
public int IdRole { get; set; }

public User User { get; set; }
public Role Role { get; set; }

[NotMapped]
public string UserName
{
get { return User.Name; }
}
[NotMapped]
public string RoleName
{
get { return Role.Name; }
}
}
< /code>

Для меня важно для будущей фильтрации, данных о базе данных и т. Д. Я не настаиваю на таком решении. Это просто первая идея.

На данный момент, если я попытаюсь отфильтровать объекты по имени пользователя или rolename У меня есть исключение, потому что not makeped < /Code> Свойства не существует в базе данных. На данный момент я использую метод .include () (нетерпеливая загрузка), но можно ли получить как вышеупомянутая функциональность (Filterint и т. Д., так и с нетерпением Quarders) одним способом?

edit 1: < /strong>
Я использую код первого < /code> стратегия создания модели.
Редактировать 2: < /strong >
ok, чтобы уточнить, Самый простой ответ - создать метод фильтра, подобный < /p>

public IQueryable Filter(IQueryable query, string userName, string roleName)
{
return query.Where(x => x.User.Name.Contains(userName) && x.Role.Name.Contains(roleName));
}


Подробнее здесь: https://stackoverflow.com/questions/325 ... y-in-query

Вернуться в «C#»