.NET

JSON Serialization

System.Text.Json, JsonSerializer, custom converters, naming policies, null handling

20 คำถามสัมภาษณ์·
Mid-Level
1

What is the main namespace for JSON serialization in modern .NET?

คำตอบ

System.Text.Json is the official namespace for JSON serialization in .NET Core 3.0+. It progressively replaces Newtonsoft.Json (Json.NET) as it is more performant, integrated into the framework and optimized for modern scenarios. Newtonsoft.Json remains available via NuGet for backward compatibility or advanced features not available in System.Text.Json.

2

Which method to use to serialize a C# object to a JSON string?

คำตอบ

JsonSerializer.Serialize converts a C# object to a JSON string. This static method accepts the object to serialize and optionally JsonSerializerOptions to customize behavior. Serialize returns a string, while SerializeToUtf8Bytes returns a byte[] to optimize performance by avoiding string allocation.

3

What is the default naming convention of System.Text.Json for JSON properties?

คำตอบ

By default, System.Text.Json preserves exactly the C# property names (case-sensitive PascalCase). If a C# property is named UserName, the JSON will contain UserName. To get camelCase (userName), configure JsonSerializerOptions with PropertyNamingPolicy = JsonNamingPolicy.CamelCase. This differs from Newtonsoft.Json which uses camelCase by default.

4

How to deserialize a JSON string into a typed C# object?

5

Which attribute to use to ignore a property during JSON serialization?

+17 คำถามสัมภาษณ์

เชี่ยวชาญ .NET สำหรับการสัมภาษณ์ครั้งถัดไป

เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์

เริ่มใช้ฟรี