title: Asp.Net Core localization not working using VSCode
body: <p>I'm using VSCode to create an Asp.Net Core API. I'm trying all day to figure out how to make localization to work but with no results. When I do the exact same thing in Visual Studio 2015 Community Edition everything works fine. But not with VSCode...</p>
  
  <p>So I created the following super simple project with the simplest structure in VSCode:</p>
  
  <p><a href="https://i.stack.imgur.com/ZxG00.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/ZxG00.png" alt="enter image description here"></a></p>
  
  <p>I'm using Postman to send an Http Get on <a href="http://localhost:5000/app" rel="nofollow noreferrer">http://localhost:5000/app</a>. The result json is this:</p>
  
  <pre><code>{
    "name": "test_value",
    "value": "test_value",
    "resourceNotFound": true
  }
  </code></pre>
  
  <p>The VS Community project is simillar:</p>
  
  <p><a href="https://i.stack.imgur.com/Jeuhj.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/Jeuhj.png" alt="enter image description here"></a></p>
  
  <p>The result json is this (the right one):</p>
  
  <pre><code>{
    "name": "test_value",
    "value": "This is the test value!",
    "resourceNotFound": false
  }
  </code></pre>
  
  <p>Could anyone figure out why this is not working inside from VSCode? In both cases I am running Kestrel, both projects complile fine, both have the exact same following source code. The problem is there in a windows and also in a linux development enviroment. This drives me crazy!</p>
  
  <p>project.json</p>
  
  <pre><code>{
    "dependencies": {
      "Microsoft.NETCore.App": {
        "version": "1.0.1",
        "type": "platform"
      },
      "Microsoft.AspNetCore.Server.Kestrel": "1.0.1",
      "Microsoft.AspNetCore.Mvc": "1.0.1"
    },
    "frameworks": {
      "netcoreapp1.0": {
        "imports": [
          "dotnet5.6"
        ]
      }
    },
    "buildOptions": {
      "emitEntryPoint": true,
      "preserveCompilationContext": true
    },
    "runtimeOptions": {
      "configProperties": {
        "System.GC.Server": true
      }
    },
    "tooling": {
      "defaultNamespace": "Trans"
    }
  }
  </code></pre>
  
  <p>Program.cs</p>
  
  <pre><code>using System.IO;
  using Microsoft.AspNetCore.Hosting;
  
  namespace Trans
  {
      public class Program
      {
          public static void Main(string[] args)
          {
              var host = new WebHostBuilder()
                  .UseKestrel()
                  .UseContentRoot(Directory.GetCurrentDirectory())
                  .UseStartup&lt;Startup&gt;()
                  .Build();
  
              host.Run();
          }
      }
  }
  </code></pre>
  
  <p>Startup.cs</p>
  
  <pre><code>using Microsoft.AspNetCore.Builder;
  using Microsoft.Extensions.DependencyInjection;
  
  namespace Trans
  {
      public class Startup
      {
          public void ConfigureServices(IServiceCollection services)
          {
              services.AddLocalization(options =&gt; options.ResourcesPath = "Resources");
              services.AddMvc();
          }
  
          public void Configure(IApplicationBuilder app)
          {
              app.UseMvc();
          }
      }
  }
  </code></pre>
  
  <p>AppController.cs</p>
  
  <pre><code>using Microsoft.AspNetCore.Mvc;
  using Microsoft.Extensions.Localization;
  
  namespace Trans.Controllers
  {
      [Route("app")]
      public class AppController : Controller
      {
          IStringLocalizer&lt;AppController&gt; _localizer;
  
          public AppController(IStringLocalizer&lt;AppController&gt; localizer)
          {
              _localizer = localizer;
          }
  
          [HttpGet]
          public IActionResult Get()
          {
              return Json(_localizer["test_value"]);
          }
      }
  }
  </code></pre>
  
  <p>Controllers.AppController.resx</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;root&gt;
    &lt;!-- 
      Microsoft ResX Schema 
  
      Version 2.0
  
      The primary goals of this format is to allow a simple XML format 
      that is mostly human readable. The generation and parsing of the 
      various data types are done through the TypeConverter classes 
      associated with the data types.
  
      Example:
  
      ... ado.net/XML headers &amp; schema ...
      &lt;resheader name="resmimetype"&gt;text/microsoft-resx&lt;/resheader&gt;
      &lt;resheader name="version"&gt;2.0&lt;/resheader&gt;
      &lt;resheader name="reader"&gt;System.Resources.ResXResourceReader, System.Windows.Forms, ...&lt;/resheader&gt;
      &lt;resheader name="writer"&gt;System.Resources.ResXResourceWriter, System.Windows.Forms, ...&lt;/resheader&gt;
      &lt;data name="Name1"&gt;&lt;value&gt;this is my long string&lt;/value&gt;&lt;comment&gt;this is a comment&lt;/comment&gt;&lt;/data&gt;
      &lt;data name="Color1" type="System.Drawing.Color, System.Drawing"&gt;Blue&lt;/data&gt;
      &lt;data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"&gt;
          &lt;value&gt;[base64 mime encoded serialized .NET Framework object]&lt;/value&gt;
      &lt;/data&gt;
      &lt;data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"&gt;
          &lt;value&gt;[base64 mime encoded string representing a byte array form of the .NET Framework object]&lt;/value&gt;
          &lt;comment&gt;This is a comment&lt;/comment&gt;
      &lt;/data&gt;
  
      There are any number of "resheader" rows that contain simple 
      name/value pairs.
  
      Each data row contains a name, and value. The row also contains a 
      type or mimetype. Type corresponds to a .NET class that support 
      text/value conversion through the TypeConverter architecture. 
      Classes that don't support this are serialized and stored with the 
      mimetype set.
  
      The mimetype is used for serialized objects, and tells the 
      ResXResourceReader how to depersist the object. This is currently not 
      extensible. For a given mimetype the value must be set accordingly:
  
      Note - application/x-microsoft.net.object.binary.base64 is the format 
      that the ResXResourceWriter will generate, however the reader can 
      read any of the formats listed below.
  
      mimetype: application/x-microsoft.net.object.binary.base64
      value   : The object must be serialized with 
              : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
              : and then encoded with base64 encoding.
  
      mimetype: application/x-microsoft.net.object.soap.base64
      value   : The object must be serialized with 
              : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
              : and then encoded with base64 encoding.
  
      mimetype: application/x-microsoft.net.object.bytearray.base64
      value   : The object must be serialized into a byte array 
              : using a System.ComponentModel.TypeConverter
              : and then encoded with base64 encoding.
      --&gt;
    &lt;xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"&gt;
      &lt;xsd:import namespace="http://www.w3.org/XML/1998/namespace" /&gt;
      &lt;xsd:element name="root" msdata:IsDataSet="true"&gt;
        &lt;xsd:complexType&gt;
          &lt;xsd:choice maxOccurs="unbounded"&gt;
            &lt;xsd:element name="metadata"&gt;
              &lt;xsd:complexType&gt;
                &lt;xsd:sequence&gt;
                  &lt;xsd:element name="value" type="xsd:string" minOccurs="0" /&gt;
                &lt;/xsd:sequence&gt;
                &lt;xsd:attribute name="name" use="required" type="xsd:string" /&gt;
                &lt;xsd:attribute name="type" type="xsd:string" /&gt;
                &lt;xsd:attribute name="mimetype" type="xsd:string" /&gt;
                &lt;xsd:attribute ref="xml:space" /&gt;
              &lt;/xsd:complexType&gt;
            &lt;/xsd:element&gt;
            &lt;xsd:element name="assembly"&gt;
              &lt;xsd:complexType&gt;
                &lt;xsd:attribute name="alias" type="xsd:string" /&gt;
                &lt;xsd:attribute name="name" type="xsd:string" /&gt;
              &lt;/xsd:complexType&gt;
            &lt;/xsd:element&gt;
            &lt;xsd:element name="data"&gt;
              &lt;xsd:complexType&gt;
                &lt;xsd:sequence&gt;
                  &lt;xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /&gt;
                  &lt;xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /&gt;
                &lt;/xsd:sequence&gt;
                &lt;xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /&gt;
                &lt;xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /&gt;
                &lt;xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /&gt;
                &lt;xsd:attribute ref="xml:space" /&gt;
              &lt;/xsd:complexType&gt;
            &lt;/xsd:element&gt;
            &lt;xsd:element name="resheader"&gt;
              &lt;xsd:complexType&gt;
                &lt;xsd:sequence&gt;
                  &lt;xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /&gt;
                &lt;/xsd:sequence&gt;
                &lt;xsd:attribute name="name" type="xsd:string" use="required" /&gt;
              &lt;/xsd:complexType&gt;
            &lt;/xsd:element&gt;
          &lt;/xsd:choice&gt;
        &lt;/xsd:complexType&gt;
      &lt;/xsd:element&gt;
    &lt;/xsd:schema&gt;
    &lt;resheader name="resmimetype"&gt;
      &lt;value&gt;text/microsoft-resx&lt;/value&gt;
    &lt;/resheader&gt;
    &lt;resheader name="version"&gt;
      &lt;value&gt;2.0&lt;/value&gt;
    &lt;/resheader&gt;
    &lt;resheader name="reader"&gt;
      &lt;value&gt;System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089&lt;/value&gt;
    &lt;/resheader&gt;
    &lt;resheader name="writer"&gt;
      &lt;value&gt;System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089&lt;/value&gt;
    &lt;/resheader&gt;
    &lt;data name="test_value" xml:space="preserve"&gt;
      &lt;value&gt;This is the test value!&lt;/value&gt;
    &lt;/data&gt;
  &lt;/root&gt;
  </code></pre>