개발꿈나무
[ASP.NET] MODEL에 여러 스키마의 DB 테이블 추가하기 본문
반응형
ASP.NET Core - Razor Pages document에 처음부터 끝까지 잘 나와있으니 참고할 것
자습서: ASP.NET Core에서 Razor Pages 시작
ASP.NET Core Razor Pages 웹앱을 빌드하는 작업의 기본 사항을 설명하는 자습서 시리즈 중 첫 번째입니다.
docs.microsoft.com
나는 이미 기본 틀이 다 짜여진 프로젝트를 받아 개발을 시작했기 때문에 table 스키마의 모든 table은
이미 model로 프로젝트에 저장되어 있었다.
하지만 view 스키마의 table을 사용할 일이 생겼고, 이 때문에 table을 추가하는 것에 대해 알아보았다.
스키마가 달라 복잡한 작업이 요구될 것이라 생각했지만 아래와 같이 동일한 방법으로 model을 추가할 수 있었다.
1. 모델 추가
using System;
using System.ComponentModel.DataAnnotations;
namespace RazorPagesMovie.Models
{
public class Movie
{
public int ID { get; set; }
public string Title { get; set; }
[DataType(DataType.Date)]
public DateTime ReleaseDate { get; set; }
public string Genre { get; set; }
public decimal Price { get; set; }
}
}
2. Start.cs 파일에 context 서비스 추가
public void ConfigureServices(IServiceCollection services)
{
services.AddRazorPages();
services.AddDbContext<RazorPagesMovieContext>(options =>
options.UseSqlServer(Configuration.GetConnectionString("RazorPagesMovieContext")));
}
RazorPagesMovieContext 부분에서 db에 접속하기 위한 정보를 적어주어야 한다.
로컬 개발의 경우 appsettings.json 파일에 다음과 같이 변수에 저장해놓고 읽어온다.
"ConnectionStrings": {
"RazorPagesMovieContext": "Server=(localdb)\\mssqllocaldb;Database=RazorPagesMovieContext-bc;Trusted_Connection=True;MultipleActiveResultSets=true"
}
3. Context.cs 파일에 table에 대한 DBSet 속성 추가
public class RazorPagesMovieContext : DbContext
{
public RazorPagesMovieContext (
DbContextOptions<RazorPagesMovieContext> options)
: base(options)
{
}
public DbSet<RazorPagesMovie.Models.Movie> Movie { get; set; }
}
반응형
'C# > C#' 카테고리의 다른 글
[C#] 특정 날짜의 주 가져오기 (GetWeekOfYear) (0) | 2022.01.19 |
---|---|
[C# 교과서] 11. C# 활용(5) - 제네릭 사용하기 (0) | 2022.01.18 |
XML data 읽어 xml 형식으로 뿌리기 (0) | 2021.10.18 |
[ASP.NET] InvalidCastException: 열에 널 데이터가 있습니다. (0) | 2021.09.16 |
[ASP.Net] Mornitoring Tool (0) | 2021.09.08 |
Comments