У меня проблемы с выяснением того, как заставить Powershell вызывать индексатор в моем классе. Класс выглядит примерно так (очень упрощенно):
public interface IIntCounters
{
int this[string counterName] { get; set; }
}
public class MyClass : IIntCounters
{
public IIntCounters Counters { get { return this; } }
int IIntCounters.this[string counterName]
{ get { ...return something... } }
}
Если я создаю новый класс, я не могу просто использовать оператор скобок - я получаю ошибку «неспособен индексировать». Я также попытался использовать get_item (), и это то, что Reflector показывает мне, что индексатор в конечном итоге становится в сборке, но это выдает ошибку «не содержит метод с именем get_item».
ОБНОВЛЕНИЕ: это похоже на мое использование явных интерфейсов. Итак, мой новый вопрос: есть ли способ заставить Powershell увидеть индексатор, не переключаясь с явных интерфейсов? (Я действительно не хочу изменять эту сборку, если это возможно.)