일부 정적 목록이있는 클래스가 있습니다. 설명의 목적을 위해 다음 두 가지만 보여 드리겠습니다.정적 메서드에 데이터베이스 컨텍스트 전달
public class Foo
{
public static readonly List<long> FirstList(EfEntities dbContext)
{
return dbContext.SomeTable.Where(x => x == 1).ToList();
}
public static readonly List<long> SecondList(EfEntities dbContext)
{
return dbContext.SomeTable.Where(x => x == 2).ToList();
}
}
저는 모든 정적 방법에 데이터베이스 컨텍스트를 전달하는 큰 팬이 아닙니다. 다른 접근법에 대한 제안이 있습니까?
처음에 마음에 들지 않는 것을 설명하고, 사용하고있는 컨텍스트를 설명하면 도움이됩니다. 예를 들어, 인스턴스 메서드로 이러한 클래스가있는 다른 클래스에서 컨텍스트를 래핑하지 않는 이유는 무엇입니까? –
@ JonSkeet 첫 번째 테스트에서 정적 인 하드 코딩 목록이있었습니다. 그러나 코드를보다 데이터 중심으로 만들고 싶습니다. 그래서 먼저 코드를 하드 코딩 한 실제 테이블 키로 변경하고 싶습니다. 당신의 제안 된 접근 방식이 갈 길입니다. – Johan