title: Is it possible to imply the name of the parameters of a params array using the nameof operator?
body: <p>I thought I could make use of the new c# 6 operator nameof to build a dictionary of key/values implicitly from a params array.</p>
  
  <p>As an example, consider the following method call:</p>
  
  <pre><code>string myName = "John", myAge = "33", myAddress = "Melbourne";
  Test(myName, myAge, myAddress);
  </code></pre>
  
  <p>I am not sure there will be an implementation of Test that will be able to imply the name of the elements, from the params array. </p>
  
  <p>Is there a way to do this using just <code>nameof</code>, without reflection ?</p>
  
  <pre><code>private static void Test(params string[] values)
  {
      List&lt;string&gt; keyValueList = new List&lt;string&gt;();
  
      //for(int i = 0; i &lt; values.Length; i++)
      foreach(var p in values)
      {
          //"Key" is always "p", obviously
          Console.WriteLine($"Key: {nameof(p)}, Value: {p}");
      }
  }
  </code></pre>