2009-01-12 3 views
0

Любая идея, как настроить SortedList, чьи элементы являются компонентами, регистрируется на контейнере в биносе.Binsor: Как использовать словари, элементы которых являются компонентами в контейнере

Crud:ICrud 
{     
    public SortedList<string, ICrudTransfer> Proxies 
    { 
    get { return _proxies;} 
    set { _proxies = value; } 
    }      
} 

Я хотел бы сделать что-то вроде:

component ‘proxy1′, ICrudTransfer 
component ‘proxy2′, ICrudTransfer 


_proxies = SortedList[of string, ICrudTransfer]() 
_proxies['url1'][email protected] 
_proxies['url2'][email protected] 

component ’service’, ICrud, Crud: 
    Proxies = _proxies 

Но это не работает

Я хотел бы использовать такие как свойства, массивы или списка. Это работает

component ’service’, ICrud, Crud: 
    CrudProxy = @proxy3 
    CrudProxies = (@proxy1 , @proxy2) 

Благодаря

ответ

0

Решение:

public class TestClass:ITestClass 
    { 
     IDictionary<string, IClass1> _dictGen = null; 
     IList<IClass1> _listGen = null; 

     public IList<IClass1> ListGeneric 
     { 
      get { return _listGen; } 
      set { _listGen = value; } 
     } 

     public IDictionary<string, IClass1> DictionaryGeneric 
     { 
      get { return _dictGen; } 
      set { _dictGen = value; } 
     } 
    } 

component 'c1', IClass1, Class1 
component 'c2', IClass1, Class1 

component 'd', ITestClass, TestClass: 
    DictionaryGeneric = {key1:@c1,key2:@c2} 
    ListGeneric = (@c1,@c2) 

Без родового (IList или IDictionary), кажется, не работает.