无法解析Jog文件,Progam.cs asp.net核心中的错误

Run*_*Ngô 5 c# asp.net json

我在ASP.CORE 2.0中遇到program.cs新版本的问题

在这里我的代码

     public class Program
{
    public static void Main(string[] args)
    {
        BuildWebHost(args).Run();
    }

    public static IWebHost BuildWebHost(string[] args) =>
        WebHost.CreateDefaultBuilder(args)
            .UseContentRoot(Directory.GetCurrentDirectory())
            .UseIISIntegration()
            .UseKestrel()
            .UseStartup<Startup>()
            .UseConfiguration(new ConfigurationBuilder().AddCommandLine(args).Build())
            .Build();

}
Run Code Online (Sandbox Code Playgroud)

当我开始项目时我有一个错误

System.FormatException: 'Could not parse the JSON file. Error on line number '0': ''.'
Run Code Online (Sandbox Code Playgroud)

怎么解决?请帮我

ijb*_*109 20

您的appSettings.json文件(或您使用的任何配置)格式是否正确?WebHost.CreateDefaultBuilder如果开头有无效字符,将无法正确解析它。当复制/粘贴在文件开头添加一个空格时,我看到了这个问题。


小智 11

当 appsettings.json 格式不正确时,可能会发生这种情况

就我而言,我有以下配置并收到错误

 {
"ConnectionStrings": {
"TransferDBConnection": 
 "Server=INGBTCPIC5DT04D;Database=TransferDB;Trusted_Connection=true;
 },
  ***{***
   "Logging": {
   "LogLevel": {
    "Default": "Warning"
   }
 },
 "AllowedHosts": "*"
}
Run Code Online (Sandbox Code Playgroud)

理想情况下,它应该是一个额外的 { 导致这个问题

 {
 "ConnectionStrings": {
 "TransferDBConnection": 
 "Server=INGBTCPIC5DT04D;Database=TransferDB;Trusted_Connection=true;"
 },
  "Logging": {
  "LogLevel": {
    "Default": "Warning"
  }
},
"AllowedHosts": "*"
}
Run Code Online (Sandbox Code Playgroud)


小智 10

我在另一个线程中遇到了类似的问题并在那里发布了我的解决方案:应用程序启动失败,Json读取错误.如果它消失,也将它发布在这里.


我遇到了同样的问题.在我的情况下,我开始实现应用程序的秘密,但中途离开了.我的secrets.json文件是左链接但无效的JSON.

检查您是否设置.csproj<UserSecretId>属性<PropertyGroup>.如果它的设置,BuildWebHost()将通过看你的secrets.json文件'%APPDATA%\Microsoft\UserSecrets\{secretId}',除了你的appsettings.json文件.任一文件中的错误都会导致该方法失败,但它不会告诉您它是哪个文件.

在我的情况下,解决方案是删除<UserSecretId>财产或

  • 啊,谢谢。我刚刚清除了我的 secrets.json。留下一对花括号`{}`解决了它。 (3认同)

MrM*_*ith 6

我的一个复杂的 API 也遇到了同样的问题,遗憾的是我浪费了几个小时来找到这个问题。

首先检查您的appsettings.jsonJSON 格式是否良好。

我的问题是我在 appsettings.json 文件中错误地输入了一些字符,如下所示(对我来说,“ttings”字符导致了这个问题)

在此输入图像描述

还要检查您的所有json文件是否不为空。标准json应该至少有两个花括号。


小智 5

同样的问题,要解决移除 <UserSecretsId> </UserSecretsId>*.cproj

这是一个糟糕的用户机密配置