Json zu C # nicht de-Serialisierung Währungssymbol korrekt

stimmen
0

Ich bin mit C # web.api mit .NET Kern 2.1. Ich habe eine Json Eigenschaft in einer appsetting.json Datei und wenn es in c # deserialisiert, über AddOptionswird das £ Symbol geändert

Kann ich eine Einstellung in den AddJsonOptionsdieses Symbol , um sicherzustellen , wird nicht verändert?

JSON SomeProperty: Pfund £,

C # Property SomeProperty = Pfund

I GELöST dies durch: die Datei in Editor zu öffnen und ihn mit UTF-8-Codierung zu speichern. Wenn die Datei im VS Spar beibehalten die UTF-8-Codierung. Nicht sicher, wie Visual Studio tut, wenn die Appsetting-Datei zu erstellen, aber es ist scheint ein Problem in der Vergangenheit gewesen zu sein. github.com/aspnet/Configuration/issues/241 Für die Aufzeichnung Ich bin mit VS2017 15.8.4 auf 10 Fenster

App Einstellungen

{
  SftpConfigList: {
    SftpConfigs: [
      {
        Host: somehost1,
        Username: foo,
        Password: okokokok
      },
      {
        Host: somehost2,
        Username: bar,
        Password: pass£££word
      }
    ]
  }
}


namespace WebApplication1
{
    public class SftpConfigListDto
    {
        public SftpConfigDto[] SftpConfigs { get; set; }
    }

    public class SftpConfigDto
    {
        public string Host { get; set; }
        public string Username { get; set; }
        public string Password { get; set; }
    }
}

ANLAUFEN

public void ConfigureServices(IServiceCollection services)
{
    services.AddOptions();
    services.Configure<SftpConfigListDto>(Configuration.GetSection(SftpConfigList));
    services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
}
Veröffentlicht am 08/11/2018 um 00:07
quelle vom benutzer
In anderen Sprachen...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more