У меня есть немного неясная модель, в которой пользователи приходят из Active Directory, но с тех пор информация поступает из базы данных SQL.
Итак, у меня есть UserRepository, который в настоящее время позволяет пользователям искать других пользователей.из активного каталога - это возвращает список, который я связываю с сеткой.
Мне нужно иметь возможность проверить, есть ли у каждого пользователя какие-либо контакты (которые живут в БД), чтобы изменить поведение пользовательского интерфейса.
Как бы вы это сделали?На другой странице Контакты будут доступны для редактирования, но в списке мне просто нужно знать, есть ли Контакты или нет.Я не вижу каких-либо чистых способов обойти расходы на вызов db для выполнения хранимой процедуры для каждого результата, чтобы получить счет, и я получаю счет, а не список контактов, чтобы сохранить его максимально упорядоченным.
Я думал о чем-то в строках:
/// <summary>
/// information resides in the database
/// </summary>
private int? contactsCount = null;
public int ContactsCount
{
get
{
if (!contactsCount.HasValue)
throw new ApplicationException("Error trying to access property ContactsCount before it has been initialised. The underlying repository code needs to handle the retrieval of this info.");
return contactsCount.Value;
}
set { contactsCount = value; }
}
и использовал UserRepository, чтобы установить значение ContactsCount после поиска для каждой строки (используя стандартное соединение SQL), но что было бы неплохо,увидеть Entity Framework в действии с фактическим свойством, но я не уверен, что могу связать только свойство с функцией, если основной объект User не является частью Entity Model?