Lokalisierung in ASP.Net-Kern-MVC funktioniert nicht - Ressourcendatei kann nicht gefunden werden

eim Versuch, meine Anwendung zu lokalisieren, habe ich die folgenden Schritte ausgeführt:https: //docs.asp.net/en/latest/fundamentals/localization.htm

Hier ist mein Code:

Startup.cs

public List<IRequestCultureProvider> RequestCultureProviders { get; private set; }

// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services)
{
    services.AddLocalization(options => options.ResourcesPath = "Resources");

    services.AddMvc()
        .AddViewLocalization(options => options.ResourcesPath = "Resources")
        .AddDataAnnotationsLocalization();

    services.AddOptions();

    services.AddTransient<IViewRenderingService, ViewRenderingService>();

    services.AddTransient<IEmailSender, EmailSender>();
}

public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
    var locOptions = app.ApplicationServices.GetService<IOptions<RequestLocalizationOptions>>();
    app.UseRequestLocalization(locOptions.Value);

    app.UseStaticFiles();
    app.UseFileServer(new FileServerOptions()
    {
        FileProvider = new PhysicalFileProvider(
        Path.Combine(Directory.GetCurrentDirectory())),
        EnableDirectoryBrowsing = true
    });

    var supportedCultures = new[]
    {
        new CultureInfo("en-US"),
        new CultureInfo("fr"),
    };

    app.UseRequestLocalization(new RequestLocalizationOptions
    {
        DefaultRequestCulture = new RequestCulture("fr"),
        // Formatting numbers, dates, etc.
        SupportedCultures = supportedCultures,
        // UI strings that we have localized.
        SupportedUICultures = supportedCultures,
        RequestCultureProviders = new List<IRequestCultureProvider>
        {
           new QueryStringRequestCultureProvider
           {
               QueryStringKey = "culture",
               UIQueryStringKey = "ui-culture"
           }
        }
    });


}

MyController.cs

public class MyController : Controller
{
    private readonly IViewRenderingService _viewRenderingService;
    private IStringLocalizer<MyController> _localizer;
    private MyOptions _options;
    //Constructor for dependency injection principle
    public MyController(IViewRenderingService viewRenderingService, IStringLocalizer<MyController> localizer, IOptions<MyOptions> options)
    {
        _viewRenderingService = viewRenderingService;
        _localizer = localizer;
        _options = options.Value;
    }

    [HttpGet]
    public string Get()
    {
        // _localizer["Name"] 
        return _localizer["Product"];
    }
}

Das*.resx -Datei wird im @ gespeicheResources Ordner mit dem NamenControllers.MyController.fr.resx (mit einem Eintrag für "Produkt").

Die Ressourcendatei kann jedoch nicht gefunden werden, und "Produkt" wird nie in französischer Sprache zurückgegeben. Ich verwende Querystring, also hier ist die Abfragezeichenfolge:

localhost:3333/my?culture=fr

Auch in der Ansicht,@Localizer["Product"] gibt "Produkt" zurück.

Kann mir jemand helfen, das zu finden, was fehlt?

BEARBEITEN

Nach einigen Nachforschungen stellte ich fest, dass sich die Kultur ändert, die Ressourcendatei jedoch nicht gefunden werden kann. Ich benutze VS2015. Kann jemand helfen

Antworten auf die Frage(4)

Ihre Antwort auf die Frage