Razor Pages in ASP.NET Core is a page-based programming model that simplifies web app development. Unlike MVC, it focuses on individual pages with their own models, handlers, and views, making development clean and organized.
Key Features:
- Page-centric approach for web apps
- Supports page handlers for GET, POST, and other HTTP methods
- Built-in model binding and validation
- Easy integration with Razor syntax
- Reduces boilerplate code and improves maintainability
Example:
Razor Page: Index.cshtml
@page
@model IndexModel
<h1>Hello, @Model.Username!</h1>
<form method="post">
<input asp-for="Username" />
<button type="submit">Submit</button>
</form>
Page Model: Index.cshtml.cs
public class IndexModel : PageModel
{
[BindProperty]
public string Username { get; set; }
public void OnPost()
{
// Handle form submission
}
}
Razor Pages in ASP.NET Core streamline page-focused web development and are ideal for simple, maintainable web applications.
Citations: