0

모듈 식 시스템을 만들고 싶습니다. 내 프로젝트에서 마이그레이션 개념에 문제가 있습니다. 모듈 작성 및 마이그레이션에 대한 일련의 원칙이 필요합니다. 예를 들어 PersonService 모듈을 만들고 모델에 따라 데이터베이스를 생성한다고 가정합니다.이 모듈의 다음 버전에서는 모델을 변경해야합니다. 고객에게 새 모듈을 판매 한 다음 고객의 데이터베이스를 업데이트해야합니다. 새로운 모델로. 이 프로세스는 자동으로 수행해야합니다. 하지만 내 질문은 다음과 같습니다.모듈 식 시스템의 경우

고객 시스템에서 데이터베이스를 자동으로 마이그레이션 할 수 있습니까?

모듈 및 데이터베이스를 만드는 데 중요한 원칙은 무엇입니까?

고객이 데이터베이스를 업데이트 할 수 있습니까? 고객이 모듈의 이전 버전을 설치하려면 어떻게합니까?

------------------------ 편집 --------------------- ---------- 어떤 모델을 사용하는 것이 더 좋을까요? 코드 우선? 데이터베이스 우선? 아니면 ....?

자동 마이그레이션으로 고객의 데이터가 손상됩니까?

은 감사를 다시

+0

게시물의 서명 사용을 중단하십시오. 귀하의 사용자 박스는 이미 그렇게합니다. –

답변

1

당신은 당신이 마이그레이션에 configuration.cs 파일에서 활성화 자동 마이그레이션을 고객에게 그것을 제공으로 업데이트됩니다 다음 실행시 자동 데이터베이스 마이그레이션을 사용하여 응용 프로그램의 최신 버전을 배포 할 수 있습니다 폴더. 이러한 필드 나 테이블에 따라 논리가있는 경우 마이그레이션 중에 데이터를 채우거나 데이터가 채워진 후까지 논리를 사용하지 않도록 설정해야합니다.

처음 설치할 때 항상 기본 데이터베이스로 시작하려면이 시점에서 마이그레이션을 활성화해야 모델 및 데이터베이스에 기존 필드 또는 테이블을 추가해야합니다. 모델을 업데이트하고 설치를 이전 모델 버전으로 되돌리려면 이전 코드로 작성한 적이없는 이전 마이그레이션으로 되돌리려면 광범위한 코드를 작성하지 않는 한 불행한 것입니다.

+0

Kadumel에게 감사드립니다. 그러나 EF에서 자동 이전에 대해 연구하고 대부분의 사람들은 이것이 안전한 방법이 아니라고 생각합니다. 안전한 방법을 소개 할 수 있습니까? 내 코드로 마이그레이션 할 수 있습니까? –

+1

나는이 방법을 1 년 넘게 사용해 왔지만 전혀 문제가 없었다. 더 안전한 방법이 확실하지 않습니다. –