모델 추가(VB)
작성자: Rick Anderson
이 자습서에서는 무료 버전의 Microsoft Visual Studio인 Microsoft Visual Web Developer 2010 Express Service Pack 1을 사용하여 ASP.NET MVC 웹 애플리케이션을 빌드하는 기본 사항을 설명합니다. 시작하기 전에 아래에 나열된 필수 구성 요소를 설치했는지 확인합니다. 웹 플랫폼 설치 관리자 링크를 클릭하여 모두 설치할 수 있습니다. 또는 다음 링크를 사용하여 필수 구성 요소를 개별적으로 설치할 수 있습니다.
- Visual Studio Web Developer Express SP1 필수 구성 요소
- MVC 3 도구 업데이트 ASP.NET
- SQL Server Compact 4.0(런타임 + 도구 지원)
Visual Web Developer 2010 대신 Visual Studio 2010을 사용하는 경우 Visual Studio 2010 필수 구성 요소 링크를 클릭하여 필수 구성 요소를 설치합니다.
VB.NET 소스 코드가 있는 Visual Web Developer 프로젝트를 이 항목과 함께 사용할 수 있습니다. VB.NET 버전을 다운로드합니다. C#을 선호하는 경우 이 자습서의 C# 버전 으로 전환합니다.
모델 추가
이 섹션에서는 데이터베이스에서 영화를 관리하기 위한 몇 가지 클래스를 추가합니다. 이러한 클래스는 ASP.NET MVC 애플리케이션의 "모델" 부분이 됩니다.
Entity Framework라고 하는 .NET Framework 데이터 액세스 기술을 사용하여 이러한 모델 클래스를 정의하고 작업합니다. Entity Framework(EF라고도 함)는 Code First라는 개발 패러다임을 지원합니다. Code First를 사용하면 간단한 클래스를 작성하여 모델 개체를 만들 수 있습니다. ("일반 오래된 CLR 개체"에서 POCO 클래스라고도 합니다.) 그런 다음 클래스에서 즉시 데이터베이스를 만들 수 있으므로 매우 깨끗하고 빠른 개발 워크플로를 사용할 수 있습니다.
모델 클래스 추가
솔루션 탐색기 Models 폴더를 마우스 오른쪽 단추로 클릭하고 추가를 선택한 다음 클래스를 선택합니다.
클래스 이름을 "Movie"로 지정합니다.
클래스에 다음 5개의 속성을 Movie
추가합니다.
Public Class Movie
Public Property ID() As Integer
Public Property Title() As String
Public Property ReleaseDate() As Date
Public Property Genre() As String
Public Property Price() As Decimal
End Class
이 클래스를 Movie
사용하여 데이터베이스의 영화를 나타냅니다. 개체의 Movie
각 인스턴스는 데이터베이스 테이블 내의 행에 해당하며 클래스의 각 속성은 테이블의 Movie
열에 매핑됩니다.
동일한 파일에 다음 클래스를 추가합니다 MovieDBContext
.
Public Class MovieDBContext
Inherits DbContext
Public Property Movies() As DbSet(Of Movie)
End Class
이 클래스는 MovieDBContext
데이터베이스의 클래스 인스턴스 가져오기, 저장 및 업데이트를 Movie
처리하는 Entity Framework 동영상 데이터베이스 컨텍스트를 나타냅니다. Entity MovieDBContext
Framework에서 DbContext
제공하는 기본 클래스에서 파생됩니다. 에 대한 DbContext
DbSet
자세한 내용은 Entity Framework의 생산성 향상을 참조 하세요.
참조 DbContext
할 수 있도록 DbSet
하려면 파일 맨 위에 다음 imports
문을 추가해야 합니다.
Imports System.Data.Entity
전체 Movie.vb 파일은 다음과 같습니다.
Imports System.Data.Entity
Public Class Movie
Public Property ID() As Integer
Public Property Title() As String
Public Property ReleaseDate() As Date
Public Property Genre() As String
Public Property Price() As Decimal
End Class
Public Class MovieDBContext
Inherits DbContext
Public Property Movies() As DbSet(Of Movie)
End Class
연결 문자열 만들기 및 SQL Server Compact 작업
만든 클래스는 MovieDBContext
데이터베이스에 연결하고 개체를 데이터베이스 레코드에 매핑 Movie
하는 작업을 처리합니다. 하지만 한 가지 질문은 연결할 데이터베이스를 지정하는 방법입니다. 이렇게 하려면 애플리케이션의 Web.config 파일에 연결 정보를 추가합니다.
애플리케이션 루트 Web.config 파일을 엽니다. (다음이 아님)Views 폴더의 Web.config 파일입니다.) 아래 이미지는 두 Web.config 파일을 모두 보여 하며, 빨간색 원을 그리는 Web.config 파일을 엽니다.
Web.config 파일의 <connectionStrings>
요소에 다음 연결 문자열 추가합니다.
<add name="MovieDBContext"
connectionString="Data Source=|DataDirectory|Movies.sdf"
providerName="System.Data.SqlServerCe.4.0"/>
다음 예제에서는 새 연결 문자열 추가된 Web.config 파일의 일부를 보여줍니다.
<configuration>
<connectionStrings>
<add name="MovieDBContext"
connectionString="Data Source=|DataDirectory|Movies.sdf"
providerName="System.Data.SqlServerCe.4.0"/>
<add name="ApplicationServices"
connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true"
providerName="System.Data.SqlClient" />
</connectionStrings>
이 적은 양의 코드와 XML은 영화 데이터를 데이터베이스에 나타내고 저장하기 위해 작성해야 하는 모든 것입니다.
다음으로, 영화 데이터를 표시하고 사용자가 새 MoviesController
영화 목록을 만들 수 있도록 하는 데 사용할 수 있는 새 클래스를 빌드합니다.