Виндзорский замок IoC, как зарегистрировать IBaseService <TObject>в BaseService <TObject, TRepository> - PullRequest
0 голосов
/ 30 ноября 2009

У меня есть что-то вроде этого:

public interface IBaseService<TObject>

    public class BaseService<TObject, TRepository> : IBaseService<TObject> 
           where TRepository : IRepository<TObject>

Мне нужно зарегистрировать BaseService Для IBaseService (IRepository <> зарегистрирован)

1 Ответ

1 голос
/ 30 ноября 2009

если вы должны сделать это так, вам придется переопределить DefaultKernel.BuildCreationContext (или что-то подобное).

Обычно то, что вы делаете, не поддерживается, потому что это неправильно и расплывчато. Тебе лучше быть откровенным и творить.

public class Service<TObject> : BaseService<TObject, IRepository<TObject>>
...