public class ScheduleRatesController
{
protected CoreDataManager dataManager;
public ScheduleRatesController()
{
dataManager = new CoreDataManager();
}
// testing
public ScheduleRatesController(CoreDataManager manager)
{
dataManager = manager;
}
public virtual void GetTranQuotesToFillRatesAndPayments(ref List<int> ids)
{
ids.AddRange(new List<int>());
}
}
Итак, чтобы дать вам, ребята, некоторую предысторию, мы разбиваем один запрос к БД на кучу разных, и мы хотим, чтобы подклассы в основном каждый брали вызов БД для их GetTranQuotesToFillRatesAndPayments()
метода, который представляет его специфичноquery.
То, что вы видите выше, это базовый класс, который у меня есть.Я сделал эти два метода virtual
, так как планирую переопределить их подклассами для выполнения своих собственных задач.Таким образом, может быть что-то вроде:
public override void GetTranQuotesToFillRatesAndPayments(ref List<int> ids)
{
ids.AddRange(dataManager.GetLoanTranQuotes());
}
и т. Д. Мой вопрос в том, является ли это наилучшим / самым чистым способом выполнения шаблона, подобного этому?
Код, который вызывает это, собираетсясодержит огромный список отфильтрованных идентификаторов, которые необходимо заполнить, вызывая каждый вызов классов GetTranQuotesToFillRatesAndPayments()
.Дайте мне знать, если это не имеет смысла.Я как бы отвлекаюсь на тот факт, что мне нужно будет вызывать один и тот же метод, как 6 раз, каждый в своем классе.Я думаю, что это может быть грязно само по себе, хотя цель этого состояла в том, чтобы сделать его чистым.Я не хочу, чтобы на вызывающей стороне было что-то подобное:
List<int> ids = new List<int>();
ScheduleRatesController controller = new LoanController();
controller.GetTranQuotesToFillRatesAndPayments(ref ids);
controller = new TradeController();
controller.GetTranQuotesToFillRatesAndPayments(ref ids);
и т. Д.
Дайте мне знать, если вам нужно больше информации или информации.
Спасибо.