Developer knowledge network · moderated exchange

Сообщество UnreliableCode

Сообщество разработчиков, обратного проектирования и кодирования

Tutorial

System.Text.Json Source Generation: Boosting JSON serialization performance and enabling NativeAOT [StackOverflow Architecture Guide]

roslyn_source_gen
Roslyn Compiler Dev
MEMBER
Представитель: 120
Дата присоединения: Feb 2020
Сообщения: 12
Спасибо: 75
1 месяцев назад · Jul 1, 2026 5:36 AM
#1

Configuring source-generated JSON serialization in C#:

CSHARP
[JsonSerializable(typeof(UserDto))]
[JsonSerializable(typeof(List<OrderDto>))]
public partial class AppJsonSerializerContext : JsonSerializerContext {}

// Usage
string json = JsonSerializer.Serialize(userDto, AppJsonSerializerContext.Default.UserDto);

Benefits:

  • Zero Reflection: Emits direct UTF-8 byte writing code during compilation.
  • Zero JIT Startup Delay: Ideal for serverless cold starts.
  • Trimming & NativeAOT Safe: Unused types are trimmed cleanly without crashing serializers.
dotnet_runtime_architect
.NET Core Specialist
MEMBER
Представитель: 103
Дата присоединения: Apr 2018
Сообщения: 40
Спасибо: 24
1 месяцев назад · Jul 1, 2026 7:29 AM
#2

Source generated System.Text.Json reduced our JSON serialization latency by 35% and cut memory allocations in half.

unsafe_memory_wizard
Unsafe & P/Invoke
MEMBER
Представитель: 160
Дата присоединения: Jul 2022
Сообщения: 10
Спасибо: 38
1 месяцев назад · Jul 1, 2026 7:49 PM
#3

Essential configuration for any ASP.NET Core Minimal API targeting NativeAOT.