title: Dictionary<Guid, Guid> mapping from appsettings.json in C#
body: <p>Working with VS 2017 on console application. When I use <code>Dictionary&lt;string, Guid&gt;</code> all works fine, however, when I use <code>Dictionary&lt;Guid, Guid&gt;</code> it doesn't map to AppSettings object (dict count is 0). Is there any way around it, rather then using <code>string</code> and converting it to <code>Guid</code> in the application?</p>
  
  <p><em>appsetting.json</em></p>
  
  <pre><code>{
      "AppSettings": {
          "DictionaryTest": {
              "55789653-86A3-485C-95E8-5E23C3219130": "74F87895-4965-447A-B07F-F702573218B7", 
              "FB1E7891-B3C2-4E83-A6BF-7F321C11BFFA": "FA7892A9-7925-4150-82A7-5DD3213D1242"
          }
      }
  }
  </code></pre>
  
  <p><em>in Program.cs</em></p>
  
  <pre><code>var appPath = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().CodeBase).Replace(@"file:\", "");
  
  var builder = new ConfigurationBuilder()
                   .SetBasePath(Directory.GetCurrentDirectory())
                   .AddJsonFile($@"{appPath}\appsettings.json");
  
  Configuration = builder.Build();
  
  appSettings = new AppSettings();
  Configuration.GetSection("AppSettings").Bind(appSettings);
  </code></pre>
  
  <p>When I use <code>Dictionary&lt;string, Guid&gt;</code> scenario there are 2 items in <em><code>appSettings.DictionaryTest</code></em> variable.</p>
  
  <p>But when I use <code>Dictionary&lt;Guid, Guid&gt;</code> scenario there are 0 items in <em><code>appSettings.DictionaryTest</code></em> variable.</p>
  
  <p><strong><code>Dictionary&lt;string, Guid&gt;</code> scenario:</strong></p>
  
  <p><em>AppSettings.cs</em></p>
  
  <pre><code>public class AppSettings
  {
      public Dictionary&lt;string, Guid&gt; DictionaryTest { get; set; }
  }
  </code></pre>
  
  <p><strong><code>Dictionary&lt;Guid, Guid&gt;</code> scenario:</strong></p>
  
  <p><em>AppSettings.cs</em></p>
  
  <pre><code>public class AppSettings
  {
      public Dictionary&lt;Guid, Guid&gt; DictionaryTest { get; set; }
  }
  </code></pre>