【问题标题】:Convert string with escape characters in json object in .net core 3.1在.net core 3.1中的json对象中使用转义字符转换字符串
【发布时间】:2020-11-04 00:34:21
【问题描述】:
con.Open();
MySqlParameter _ReturnValue = new MySqlParameter("_ReturnValue", MySqlDbType.Int32);
_ReturnValue.Direction = System.Data.ParameterDirection.Output;
cmd.Parameters.Add(_ReturnValue);
using (var parser = new ChoJSONWriter(sb))
parser.Write(cmd.ExecuteReader());

现在 sb.ToString() 返回的是:"[\n {\n \"code\": \"SC0009\"\n }\n]"

只是想将其转换为一个对象,在 .net core 2.1 中也是如此,下面的代码工作正常:

private JToken ParseStrtoJson(string strv)
    {
        JToken token = JToken.Parse(@strv);
        return token;
    }

升级到 .net Core 3.1 后,它返回我在 webapi 中收到的结果是这样的:

"code": [
        [
            [
                []
            ]
        ]
    ]

目前还不清楚如何处理。

【问题讨论】:

    标签: json asp.net-core-webapi .net-core-3.1 choetl


    【解决方案1】:

    在asp.net core 3.1中,对于json类的操作,需要安装Microsoft.AspNetCore.Mvc.NewtonsoftJson

    并在 Startup.cs 的 ConfigureServices 方法中添加以下内容:

       public void ConfigureServices(IServiceCollection services)
        {
           services.AddControllers().AddNewtonsoftJson();
        }
    

    您可以参考this

    【讨论】:

    • 如果我使用 Microsoft.AspNetCore.Mvc.NewtonsoftJson 那么我将如何使用 JToken?
    猜你喜欢
    • 2017-01-02
    • 2016-10-05
    • 1970-01-01
    • 2020-09-04
    • 1970-01-01
    • 2017-01-24
    • 2018-05-03
    相关资源
    最近更新 更多