ASP.NET Core Nedir?
ASP.NET Core, .NET platformunun açık kaynaklı, cross-platform web framework'üdür. Windows, Linux ve macOS üzerinde çalışır. Yüksek performansı ile en hızlı web framework'lerinden biridir.
MVC vs Web API
- MVC: HTML sayfaları render eder. Controller → Model → View akışı. Razor template engine kullanır.
- Web API: JSON/XML veri döndürür. SPA, mobil uygulama ve microservice backend'leri için idealdir.
- Razor Pages: MVC'nin basitleştirilmiş versiyonu. Küçük projeler için önerilir.
İlk Controller
[ApiController]
[Route("api/[controller]")]
public class UrunController : ControllerBase {
[HttpGet]
public IActionResult Listele() =>
Ok(new[] { "Laptop", "Telefon", "Tablet" });
[HttpGet("{id}")]
public IActionResult Getir(int id) =>
id == 0 ? NotFound() : Ok($"Ürün {id}");
[HttpPost]
public IActionResult Ekle([FromBody] UrunDto dto) {
if (!ModelState.IsValid) return BadRequest(ModelState);
return CreatedAtAction(nameof(Getir), new { id = 1 }, dto);
}
}