Фабричный образец - Вопрос с автоподключением - PullRequest
1 голос
/ 03 февраля 2010

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

public interface  IController<TCollection>
    where TCollection : class
{
    TCollection FetchAll();
    TCollection FetchByID(object id);
    TCollection FetchByQuery(Query query);
    bool Delete(object id);
    //void Insert(TEntity entity);
    //void Update(TEntity entity);
}

Что здорово, я создал «расширенную» папку классов, поместил туда класс и расширил этот класс ...

public partial class AddressController : IController<AddressCollection> { }

НЕТ проблем, ура. Затем меня поразило - есть 239 таких классов, и я не собираюсь делать их вручную, должен быть способ для программного обеспечения сделать это, и я ленив, поэтому я начал смотреть на фабричный шаблон, который будет возвращать IController . Как бы я пошел по этому поводу? Наверное, лучше задать вопрос: как я могу подумать о том, чтобы выполнять мои злые торги, взяв урок и попросив его использовать определенный интерфейс?

...