Что такое ASP.NET и зачем он нужен?
Знаю C#, хочу делать веб-сайты. Везде натыкаюсь на ASP.NET (иногда пишут «asp net»). Что это вообще такое и как на нём делают сайты?
2 ответа
ASP.NET — это веб-фреймворк от Microsoft для создания сайтов и веб-сервисов на платформе .NET, чаще всего на языке C#. Грубо говоря, это то, что позволяет писать серверную часть веба так же, как PHP, Node или Django, только на экосистеме .NET.
Важно различать поколения:
- ASP.NET (классический, Framework) — старый, только под Windows. Включал Web Forms и MVC.
- ASP.NET Core — современная переписанная версия: кроссплатформенная (Windows/Linux/macOS), быстрая, open-source. Сейчас учить нужно именно её.
Минимальный пример на ASP.NET Core (minimal API):
var builder = WebApplication.CreateBuilder(args);
var app = builder.Build();
app.MapGet("/", () => "Привет, мир!");
app.MapGet("/users/{id}", (int id) => $"Пользователь {id}");
app.Run();
Этот код поднимает веб-сервер, который отвечает на HTTP-запросы. На ASP.NET Core делают сайты (MVC/Razor Pages), REST API, real-time через SignalR и т. д.
Если начинаешь сегодня — бери ASP.NET Core, а не старый Framework.
Чтобы не запутаться в названиях, держи карту вариантов внутри ASP.NET Core:
- MVC — классика для сайтов с разделением модель/представление/контроллер.
- Razor Pages — упрощённый подход для страничных сайтов.
- Web API — для REST-бэкендов (фронт на React/Vue).
- Blazor — пишешь интерактивный UI на C# вместо JS.
Всё это — части одного ASP.NET Core, просто разные стили под разные задачи.