Получается методом отражения класса реализации - PullRequest
1 голос
/ 23 июля 2010
public void Express(Expression<Func<User, bool>> express)
{
    BLL.Manager.ILogManager logs = BLL.Container.ObjectContainer.getObject<BLL.Manager.ILogManager>();
    logs.GetAll(1);
    var total = logs.LastPageTotal;
}

Как и в приведенном выше коде, мне нужно знать ILogManager класс реализации, я знаю только то, что информация отражена способом, но в методе, определенном типом, является тип интерфейса

.Пройдя через IL, отражающий некоторую информацию о вызове , позвоните в нужную мне информацию, в конце концов, по какому классу позвонить.

1 Ответ

0 голосов
/ 23 июля 2010

Мне нужно знать ILogManager класс реализации

Если я правильно понимаю:

  • У вас есть код, который использует ILogManager переменную
  • Вы хотите узнать, какой класс реализует ILogManager

Вы можете вставить в код вызов logs.GetType(); это скажет вам тип класса, который реализует ILogManager.

Кроме того, вы можете сказать, какие классы реализуют данный интерфейс так же, как Reflector: загружая каждую возможную сборку, просматривая типы в этих сборках и записывая, какие реализуют ILogManager.

...