반응형
Notice
Recent Posts
Recent Comments
Link
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Tags
more
Archives
Today
Total
관리 메뉴

개발꿈나무

[ASP.NET] MODEL에 여러 스키마의 DB 테이블 추가하기 본문

C#/C#

[ASP.NET] MODEL에 여러 스키마의 DB 테이블 추가하기

HYOKYE0NG 2021. 9. 16. 15:20
반응형

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; }
    }

 

반응형
Comments