MVC(모델 뷰 컨트롤러)
MVC는 사용자 인터페이스(뷰), 데이터(모델) 및 응용 프로그램 논리(컨트롤러)를 분리하는 데 사용되는 디자인 패턴입니다. 이 패턴은 관심사의 분리를 달성하는 데 도움이 됩니다.
웹 사이트에 MVC 패턴을 사용하여 요청은 작업을 수행하거나 데이터를 검색하기 위해 모델 작업을 담당하는 컨트롤러로 라우팅됩니다. 컨트롤러는 표시할 뷰를 선택하고 이를 모델에 제공합니다. 뷰는 모델의 데이터를 기반으로 최종 페이지를 렌더링합니다.
ASP.NET이 포함된 MVC
ASP.NET은 문제를 명확하게 구분할 수 있는 MVC 패턴을 사용하여 동적 웹 사이트를 구축하는 강력한 패턴 기반의 방법을 제공합니다.
public class Person
{
public int PersonId { get; set; }
[Required]
[MinLength(2)]
public string Name { get; set; }
[Phone]
public string PhoneNumber { get; set; }
[EmailAddress]
public string Email { get; set; }
}
모델 및 데이터
깨끗한 모델 클래스를 만들고 데이터베이스에 쉽게 바인딩하세요. 클라이언트와 서버에 적용되는 C# 특성을 사용하여 유효성 검사 규칙을 선언적으로 정의합니다.
ASP.NET은 SQLite, SQL Server, MySQL, PostgreSQL, DB2 등을 비롯한 많은 데이터베이스 엔진과 MongoDB, Redis 및 Azure Cosmos DB와 같은 비관계형 저장소를 지원합니다.
public class PeopleController : Controller
{
private readonly AddressBookContext _context;
public PeopleController(AddressBookContext context)
{
_context = context;
}
// GET: /people
public async Task Index()
{
return View(await _context.People.ToListAsync());
}
// GET: /people/details/5
public async Task Details(int id)
{
var person = await _context.People.Find(id);
if (person == null)
{
return NotFound();
}
return View(person);
}
}
컨트롤러
일반적인 C# 메서드로 구현한 컨트롤러 액션을 통해 요청을 간단히 라우팅하세요. 요청 경로, 쿼리 문자열 및 요청 본문의 데이터는 자동으로 메서드 매개 변수에 바인딩됩니다.
Razor를 사용한 뷰
Razor 구문을 통해 단순하고 깔끔하며 가볍게 HTML 콘텐츠를 렌더링하는 방법을 뷰에 제공합니다. Razor를 사용하면 C#을 사용하여 페이지를 렌더링하여 완전히 HTML5가 호환되는 웹 페이지를 생성할 수 있습니다.
시작할 준비가 되셨나요?
단계별 자습서는 컴퓨터에서 ASP.NET이 포함된 MVC을(를) 실행하는 데 도움이 될 것입니다.