Dot Net Core - Hello World - API Development

let’s build api with ASP .NET Core.

# create webapi project
dotnet new webapi -controllers -f net8.0

# in project directory
dotnet run

Controller

ဒါက HTTP Endpoint တွေ expose လုပ်ပေးတဲ့ နေရာ။

Data Store

Data Repository တွေပေါ့။ များသောအားဖြင့် ORM ဖြစ်တဲ့ Entity Framework သုံးပြီး run ကောင်း run ကြမယ်။

Model

MVC က ယူထားတဲ့ model ပဲ။ ဒါကိုပဲ သုံးပြီး business တစ်ခုလုံး project တစ်ခုလုံးက အလုပ်လုပ်ကြမှာ။

Entity Framework - The ORM

သုံးချင်တဲ့ Database Driver ကို ထည့်ပေးရတာမျိုး။

dotnet add package Microsoft.EntityFrameworkCore.InMemory --version 8.0

Context Class (DbContext)

ဒါကတော့ Model နဲ့ DB ကြားက ချိတ်ဆက်မှု။ Database Connection ချိတ်တာ ဆက်တာ၊ ဒီ class က တာဝန်ယူမယ်။

class PizzaDb : DbContext
{
    public PizzaDb(DbContextOptions options) : base(options) { }
    public DbSet<Pizza> Pizzas { get; set; } = null!;
}

Dependency Injections

လက်ရှိအထိ ကြေညာထားတဲ့ Class တွေက သီးခြားစီပဲ ရှိနေသေးတာ။

Program.cs ဖိုင်မှာ ဘယ် class ကို ခေါ်ရင်ဘယ်ဟာကို သုံးမယ်။ အဲ့တာမျိုး dependency injection လုပ်ပေးဖို့ လိုမယ်။ Let’s wire up.

builder.Services.AddDbContext<PizzaDb>(options => options.UseInMemoryDatabase("items"));

ဒေတာ ယူတဲ့ ပုံစံက

app.MapGet("/pizzas", async (PizzaDb db) => await db.Pizzas.ToListAsync());

အသုံးများတဲ့ packages

dotnet add package Microsoft.EntityFrameworkCore.Sqlite --version 8.0
dotnet tool install --global dotnet-ef
dotnet add package Microsoft.EntityFrameworkCore.Design --version 8.0
Written on February 2, 2026