Должен ли я сделать новый метод репо? - PullRequest
0 голосов
/ 22 апреля 2011

Мне иногда интересно, как мне делать методы репо.

У меня есть

 public List<TableA> Get(Guid id)
    {
        return session.Query<TableA>().Where(x => x.Id== id).ToList();
    }

Теперь я использую это в нескольких местах в своих слоях обслуживания, но в одном месте мне нужно сделать выбор.

Должен ли я сделать это

public List<string> GetNames(Guid id)
    {
        return session.Query<TableA>().Where(x => x.Id== id).Select(x => x.Name).ToList();
    }

OR

// это в моем слое обслуживания

public void ServiceGet(Guid id)
{
     myRepo.Get(id).Select(x => x.Name).ToList();
}

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

1 Ответ

1 голос
/ 22 апреля 2011

Вы должны позволить вашей базе данных выполнять как можно больше фильтрации, потому что это то, в чем она хороша. Когда придет время настраивать производительность, это даст вам максимальную гибкость. Сложная задача - провести тонкую грань между фильтрацией и бизнес-логикой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...