[C#] Entity Framework 학습을 위해서 간단한 머드게임 만들기 2
목표
- EntityFramework 사용하여 DATABASE Model을 생성합니다.
1.DataBase First 를 사용하기 때문에 먼저 MS-SQL DTABASE를 만들어줍니다.
UserTable : 로그인정보를 담고있는 테이블
<CreateTable>...
USE [FirstAdventure]
GO
/****** Object: Table [dbo].[User] Script Date: 07/23/2019 19:30:07 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[User](
[UserID] [int] IDENTITY(1,1) NOT NULL,
[LoginID] [nchar](20) NULL,
[Password] [nchar](20) NULL,
CONSTRAINT [PK_User] PRIMARY KEY CLUSTERED
(
[UserID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
--UserID 계정 기본키로 캐릭터정보에 외래키로 사용됨
--LoginID 로그인에 사용할 ID정보
--Password 로그인에 사용할 password 정보
Player : 계정별 캐릭터정보를 담을 테이블
<CreateTable>...
USE [FirstAdventure]
GO
/****** Object: Table [dbo].[Player] Script Date: 07/23/2019 19:30:22 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Player](
[PlayerId] [int] IDENTITY(1,1) NOT NULL,
[UserId] [int] NOT NULL,
[Name] [nchar](50) NULL,
[Level] [int] NULL,
[Hp] [int] NULL,
[Mp] [int] NULL,
[Steminer] [int] NULL,
[Anger] [int] NULL,
CONSTRAINT [PK_Player] PRIMARY KEY CLUSTERED
(
[PlayerId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[Player] WITH CHECK ADD FOREIGN KEY([UserId])
REFERENCES [dbo].[User] ([UserID])
GO
--PlayerId 캐릭터 기본키
--UserId 계정정보와 연동을위해서 외래키로 설정
--Name 캐릭터명 / Level 캐릭터레벨 / Hp, MP, Steminer, Anger 캐릭터 Status 정보
2. DATABASE 생성완료 후 VisualStudio 새로운 프로젝트를 생성 후 엔티티 모델(edmx)을 추가해줍니다.
기존에 만든DATABASE연결정보를 입력해줍니다.
혹시 위와같은 창이뜨지 않았거나 테이블을 선택안하고 넘어간경우에는 솔류션 탐삭기에서 edms를 선택 후 아래와같이 추가가 가능합니다.
3. 정상적으로 EntityFramework 등록이 끝났다면 아래와같이 edmx 파일을 선택한경우 TableModel이 보여집니다.