2012-02-14 3 views
5

EF 4.3과 함께 ASP.net MVC 3 프로젝트에서 SQL Server와 ELMAH를 사용하고 싶습니다.Autorun ELMAH 데이터베이스 스크립트

SQL 스크립트를 자동으로 실행하여 elmah 테이블을 만들 수있는 방법이 있습니까?

나는 마이그레이션을 통해 업무를 수행 할 수 있다고 생각하지만 아직 많이 사용하지는 않았습니다.

솔루션을 체크 아웃하고이를 곧바로 실행할 수있는 솔루션을 목표로하고 있으며 (로컬 또는 전체 SQL Server 배포시 sqlexpress에) 다양한 헬퍼 SQL 스크립트를 수동으로 실행하지 않고도 작업 할 수 있습니다.

답변

5

빈 코드 기반 마이그레이션을 추가하십시오 (보류중인 DB 변경이없는 경우 add-migration ElmahSetup 입력).

그런 다음 Sql()에 대한 호출을 추가하여 Up() 메서드에서 elmah를 실행하십시오. 솔루션을 완료하려면 해당 드롭 문을 Down() 메소드에 추가해야합니다. https://www.nuget.org/packages/Elmah.SqlServer.EFInitializer/ : 당신은 6.1 후 지금 당신을 위해 ELMAH 테이블과 발동을 초기화하는 nuget 패키지가 EF를 사용하는 경우

+0

당신은 다운을위한 스크립트도 제공 할 수 있습니까? – Adaptabi

+0

스크립트가 어떻게 생겼는지 모르겠지만'Down()'메소드를 만드는 것은 기본적으로'Up()'메소드에서 생성 된 모든 것에 대한'Drop' 문입니다. –

+2

위대한 솔루션 @AndersAbel 다음은 EF 마이그레이션으로이 작업을 수행하는 스크립트입니다. [link] (https://gist.github.com/danmusk/7265235) – DanMusk

3

나는이 질문 EF 4.3이었다 알고 있지만. 웹 프로젝트에 추가하십시오. 그런 다음 EF 코드를 사용하여 생성합니다. App_Start 폴더에 Initializer를 추가하므로 실제로 코드를 추가 할 필요가 없습니다. 데이터베이스에 마이그레이션을 추가하여 한 번만 추가되도록합니다.

+0

아주 좋은 접근 방법입니다. 두통 많이 저장 :) –