ShowProgramCode

2024年6月21日 星期五

C# .Net6 Json欄位大小寫依照物件屬性

一個小問題,Net Core6預設當物件轉為Json時,所有屬性名稱全小寫。
但是我希望能夠依照物件屬性名稱的設定,也就是多數首字大寫。

最後在Program.cs修改如下:

public class Program
{
    public static void Main(string[] args)
    {
        var builder = WebApplication.CreateBuilder(args);
        // Add services to the container.
        ...
        //setting json
        //System.Text.Json 在序列化的時候使用了 camelCase 的命名規範,這意味著首字母小寫。添加下列設定可以讓Json依照DTO屬性
        //AddNewtonsoftJson則是 Newtonsoft.Json 序列化器的設定方式
        builder.Services.AddControllers()
        .AddJsonOptions(options =>
        {
            // 或者使用 JsonNamingPolicy.CamelCase
            options.JsonSerializerOptions.PropertyNamingPolicy = null; 
        });
    
        builder.Services.AddControllers();
        ...
    }
}

沒有留言:

張貼留言