static void Main()
    {
        var source = new DictionaryActivator();

        Console.WriteLine(source.GetInstance <Car>("MyCar").Price);
        Console.WriteLine(source.GetInstance <House>("MyHouse").Number);
        Console.WriteLine(source.GetInstance <Fruit>("MyFruit").Name);
        Console.Read();
    }
示例#2
0
 public DictionaryCodec(
     IFieldCodec <KeyValuePair <TKey, TValue> > pairCodec,
     IFieldCodec <IEqualityComparer <TKey> > comparerCodec,
     DictionaryActivator <TKey, TValue> activator)
 {
     _pairCodec     = pairCodec;
     _comparerCodec = comparerCodec;
     _activator     = activator;
 }
示例#3
0
 public DictionaryCodec(
     IFieldCodec <KeyValuePair <TKey, TValue> > pairCodec,
     IUntypedCodecProvider codecProvider,
     IFieldCodec <IEqualityComparer <TKey> > comparerCodec,
     DictionaryActivator <TKey, TValue> activator)
 {
     this.pairCodec     = pairCodec;
     this.codecProvider = codecProvider;
     this.comparerCodec = comparerCodec;
     this.activator     = activator;
 }
示例#4
0
    static void Main()
    {
        var source = new DictionaryActivator();

        Console.WriteLine(source.GetInstance <Car>("MyCar").Price);
        Console.WriteLine(source.GetInstance <House>("MyHouse").Number);
        Console.WriteLine(source.GetInstance <Fruit>("MyFruit").Name);
        var computer = source.GetInstance <object>("MyComputer", "Fast CPU", "Fast GPU");

        Console.WriteLine((computer as Computer).Cpu);
        Console.WriteLine((computer as Computer).Gpu);
        Console.Read();
    }