2010-11-26 8 views
0

dbml 파일에 대한 사용자 정의 빌드 및 컴파일 작업을 만들었습니다. "Build Action"은 "dbml"로 설정되어 있으며 프로젝트 내부에서 어떻게 든 dbml 파일을 리소스로 포함 할 수 있는지 궁금합니다. 그 이유는 dbml 파일이 프로덕션 db에 대해 유효성이 검사되는 응용 프로그램 시작시 연기 테스트를 실행하려고하기 때문입니다.dbml 파일을 컴파일하고 추가 할 수 있습니까?

답변

1

dbml 파일 자체는 기본적으로 포함되지 않으며 디자인 타임에 cs 클래스를 생성하는 데만 사용됩니다. 그러나 mapping namespace을 사용하면 런타임에 테이블, 멤버 등을 트래버스 할 수 있습니다.

dbml 파일을 리소스로 포함시킬 수도 있지만 매핑 정보가 이미 생성 된 클래스 및 멤버에 대한 특성 형식으로 존재하며 더 쉬운 옵션 인 매핑 네임 스페이스를 통해 쉽게 액세스 할 수 있기 때문에 이러한 정보가 리소스로 포함될 수 있습니다.

+0

맞습니다. dbml 파일이 어쨌든 생성 될 내용을 지정하기 때문에 VCS에서 모든 생성 된 클래스와 DataContexts를 제거했음을 확인할 수 있습니다. 우리는 TeamCity 또는 이와 동등한 dbml 파일의 유효성을 검사 할 필요가 있기 때문에 내가 생각했던 것들을 병합하는 많은 시간을 보내고 있었다. 가능하다면이 기능을 재사용하고 싶습니다. :) 질문 : DBml 파일을 임베드하고 빌드시에 코드 생성을 사용할 수 있습니까? – mhenrixon

+0

포인터를 가져 주셔서 감사합니다, 나는 실제로 그 가능성을 고려하지 않았습니다! – mhenrixon

+0

나는 이해하고 있는지 잘 모르겠다. 생성 된 클래스를 어디에서 삭제 했습니까? 앱의 일부가 아닌 경우 어떻게 사용할 수 있습니까? – KristoferA

관련 문제