Libray c# ที่ใช้บ่อย และ ตัวอย่างการใช้งาน และคำอธิบาย

By suparat · 08 Oct 2025


ได้เลย! 😎 ฉันจะสรุป Library ยอดนิยมใน C# พร้อมตัวอย่างโค้ด และคำอธิบายแบบเข้าใจง่าย แบ่งตามประเภทการใช้งาน


1️⃣ Newtonsoft.Json (JSON Serialization / Deserialization)

คำอธิบาย: ใช้สำหรับแปลง Object → JSON หรือ JSON → Object
ติดตั้ง: Install-Package Newtonsoft.Json

ตัวอย่าง:

using Newtonsoft.Json;

// สร้าง object
var person = new { Name = "Jen", Age = 25 };

// Object → JSON
string json = JsonConvert.SerializeObject(person);
Console.WriteLine(json); // {"Name":"Jen","Age":25}

// JSON → Object
var obj = JsonConvert.DeserializeObject<dynamic>(json);
Console.WriteLine(obj.Name); // Jen

2️⃣ Dapper (Micro ORM สำหรับ Database)

คำอธิบาย: ใช้สำหรับ query database แบบเร็ว ง่าย และ lightweight
ติดตั้ง: Install-Package Dapper

ตัวอย่าง:

using Dapper;
using System.Data.SqlClient;

string connectionString = "Server=.;Database=TestDb;Trusted_Connection=True;";
using var connection = new SqlConnection(connectionString);

var users = connection.Query<User>("SELECT * FROM Users WHERE Age > @Age", new { Age = 20 });

foreach(var user in users)
{
    Console.WriteLine($"{user.Id}: {user.Name}");
}

3️⃣ Serilog (Logging)

คำอธิบาย: ใช้สำหรับเก็บ log ในแอป เช่น console, file หรือ database
ติดตั้ง: Install-Package Serilog และ Install-Package Serilog.Sinks.File

ตัวอย่าง:

using Serilog;

Log.Logger = new LoggerConfiguration()
    .WriteTo.Console()
    .WriteTo.File("logs/log.txt", rollingInterval: RollingInterval.Day)
    .CreateLogger();

Log.Information("Hello Serilog!");
Log.Warning("Something might be wrong!");
Log.Error("Something went wrong!");

4️⃣ AutoMapper (Mapping Object ↔ Object)

คำอธิบาย: ใช้สำหรับ mapping data จาก object หนึ่งไปอีก object หนึ่ง เช่น DTO ↔ Entity
ติดตั้ง: Install-Package AutoMapper

ตัวอย่าง:

using AutoMapper;

public class User { public string Name { get; set; } public int Age { get; set; } }
public class UserDto { public string Name { get; set; } }

var config = new MapperConfiguration(cfg => cfg.CreateMap<User, UserDto>());
var mapper = config.CreateMapper();

var user = new User { Name = "Jen", Age = 25 };
var userDto = mapper.Map<UserDto>(user);

Console.WriteLine(userDto.Name); // Jen

5️⃣ FluentValidation (Validation)

คำอธิบาย: ใช้สำหรับตรวจสอบค่าใน object ง่ายและอ่านง่าย
ติดตั้ง: Install-Package FluentValidation

ตัวอย่าง:

using FluentValidation;

public class User
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public class UserValidator : AbstractValidator<User>
{
    public UserValidator()
    {
        RuleFor(user => user.Name).NotEmpty().WithMessage("Name is required");
        RuleFor(user => user.Age).InclusiveBetween(18, 60).WithMessage("Age must be 18-60");
    }
}

var user = new User { Name = "", Age = 17 };
var validator = new UserValidator();
var result = validator.Validate(user);

foreach(var error in result.Errors)
{
    Console.WriteLine(error.ErrorMessage);
}

6️⃣ HttpClient / RestSharp (HTTP Requests)

คำอธิบาย: ใช้สำหรับเรียก API ภายนอก
RestSharp ติดตั้ง: Install-Package RestSharp

ตัวอย่าง RestSharp:

using RestSharp;

var client = new RestClient("https://jsonplaceholder.typicode.com");
var request = new RestRequest("/posts/1", Method.Get);

var response = client.Execute(request);
Console.WriteLine(response.Content);

7️⃣ EPPlus (Excel Handling)

คำอธิบาย: ใช้สร้าง / อ่าน Excel ไฟล์ (.xlsx)
ติดตั้ง: Install-Package EPPlus

ตัวอย่าง:

using OfficeOpenXml;
using System.IO;

ExcelPackage.LicenseContext = LicenseContext.NonCommercial;

using var package = new ExcelPackage();
var worksheet = package.Workbook.Worksheets.Add("Sheet1");

worksheet.Cells[1, 1].Value = "Name";
worksheet.Cells[1, 2].Value = "Age";

worksheet.Cells[2, 1].Value = "Jen";
worksheet.Cells[2, 2].Value = 25;

package.SaveAs(new FileInfo("test.xlsx"));

💡 สรุป:

  • JSON → Newtonsoft.Json

  • DB Query → Dapper / EF Core

  • Logging → Serilog

  • Mapping → AutoMapper

  • Validation → FluentValidation

  • HTTP Request → HttpClient / RestSharp

  • Excel → EPPlus


ถ้าอยาก ฉันสามารถทำ ตาราง Library C# ยอดนิยม + ความสามารถ + ตัวอย่างโค้ดสั้น ๆ ให้ดูง่าย ๆ เหมือน Cheat Sheet ให้เลย
คุณอยากให้ทำแบบนั้นไหม?

Libray
Web hosting by Somee.com