Why IEnumerable<T> returns null here?
<p>Can anyone please tell me why method parameter IEnumerable returns null even though it is assigned at the callee method.
We all know interface is an reference type.  </p>

<p>Dont consider the logic. I just replaced my business logic to suit the scenario</p>

<pre><code>static void Main()  
{   
  IEnumerable&lt;int&gt; gEnumerable = null;  
  Foo(gEnumerable);    //here param gEnumerable always returns null even if i assign  value at my Foo(), why is it so???  
}    

static IEnumerable&lt;int&gt; Bar(List&lt;int&gt; lst)         
{  
  return lst.Select(k =&gt; k);  
}  

private  static  void Foo(IEnumerable&lt;int&gt; response)  
{  
  response = Bar(new List&lt;int&gt; { 1, 2, 3, 4, 5, 6 });  
}
</code></pre>

<p>Kindly explain me regarding this</p>
