ASP.NET API Key 的盒子乱七八糟

ASP.NET API Key's case is messed up

我用ASP.NET Core 3.1

我想要我的 API 到 return 一些我格式化为 JSON 的数据。

出于某种原因,我想要 return 的一个子对象是一个 class 实例,其属性格式为 UPPERCASE_SNAKE_CASE.

我希望我的回复给我这样格式的数据:

{
    "user": {
        "USER_ID": 1,
        "USER_CODE": "xxx",
        "EMAIL": "myemail@domain.com"
    }
}

我得到的是下划线字符之前的一些字符是小写的:

{
    "user": {
        "useR_ID": 1,
        "useR_CODE": "xxx",
        "email": "myemail@domain.com"
    }
}

在我的 Startup.cs 文件中,我使用以下格式进行格式化:

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

我试图添加我在其他帖子中看到的这一行:

services.AddControllersWithViews().AddJsonOptions(opts => opts.JsonSerializerOptions.PropertyNamingPolicy = null);

这并没有改变任何东西。

我不希望我所有的密钥都变成UPPERCASE_SNAKE_CASE,因为我使用驼峰命名法,但我希望应用程序遵循密钥在代码中的编写方式。当我使用调试器时,密钥显示为我希望的样子,只有在客户端部分(Angular 或 Postman)密钥才会被弄乱。

您是否尝试过将 [JsonProperty("USER_ID")] 样式属性添加到您的 class 属性? – 大卫G 3 月 2 日 11:43