我有时想知道如何制作我的回购方法。
我有这个
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();
}
我无法确定是否应该制作新方法或只是返回一些常规结果,然后让服务层处理过滤它。
答案 0 :(得分:1)
您应该让您的数据库尽可能多地进行过滤,因为这是它擅长的。当需要进行性能调整时,这将为您提供最大的灵活性。棘手的部分是在过滤和业务逻辑之间划清界限。