我应该制作新的Repo方法吗?

时间:2011-04-22 17:21:14

标签: c# nhibernate repository

我有时想知道如何制作我的回购方法。

我有这个

 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 个答案:

答案 0 :(得分:1)

您应该让您的数据库尽可能多地进行过滤,因为这是它擅长的。当需要进行性能调整时,这将为您提供最大的灵活性。棘手的部分是在过滤和业务逻辑之间划清界限。