title: c# different delegate add in dictionary and run deleagate method from dictionary
body: <p>With C#</p>
  
  <p>I want to my delegate method into one dictionary, and put them all out and run.</p>
  
  <p>for example  </p>
  
  <pre><code>class class1{
  
  Func&lt;string,int&gt; method1 = new Func&lt;string,int&gt;( x =&gt; 3);
  Func&lt;int,double&gt; method2 = new Func&lt;string,int&gt;( x =&gt; 3.0);
  Func&lt;double,bool&gt; method3 = new Func&lt;string,int&gt;( x =&gt; true);
  
  Dictionary&lt;string, dynamic&gt; dic = new Dictionary&lt;string, dynamic&gt;();
  
  dic.add("m1",method1)
  dic.add("m2",method2)
  dic.add("m3",method3)
  
  // rund all method 
  
  dynamic RunMethod(Dictionary&lt;string, dynamic&gt; dic , dynamic firstInput, int index = 0)
  {
    if(index = dic.count) return 
    RunMethod(dic, dic.ElementAt[index].value(input) , index + 1)
  }
  
  void main ()
  {
   RunMethod( dix , "firstString" )
  }
  }
  </code></pre>
  
  <p>(this code has error but expression of what i want to do )</p>
  
  <p>What i want to do is like below.</p>
  
  <ol>
  <li>Create Method 1, 2 ,3 </li>
  <li><p>Output type of Method 1 = Input type of Method2 ,
  Output type of Method 2 = Input type of Method3
  Finally get output of Method3</p></li>
  <li><p>There is Run Method that take Input that has type of method1 and method dictionary (or list or something)</p></li>
  <li><p>I want to additional method that check what type of method 1? and output type of method 3</p></li>
  </ol>