2008-11-05 3 views
3

Entity Framework에서 필요한 부분 클래스를 만들었습니다. 이러한 부분 클래스를 데이터 소스 창에 추가하면 속성이 예상대로 표시됩니다. 그러나 별도의 소스 파일에서 클래스를 확장하면 빌드 및 새로 고침 후에도 이러한 속성이 데이터 소스 창에 나타나지 않습니다.데이터 소스 창에 부분 클래스의 속성이 나타나지 않습니다!

EF를 사용하여 부분 클래스를 만들 때를 제외하고는 소스 파일의 부분 클래스에있는 모든 속성이 데이터 소스 창에서 예상대로 작동합니다.

편집 : edm 디자이너의 문제가되는 테이블을 제거한 후에 모든 작업을 다시 추가해야합니다. 거의 장기적인 해결책은 아닙니다. 다른 누구나 비슷한 문제가 발생합니까? 두 개의 프로젝트 생성 솔루션에서

1 단계 ... 만들기 필요한 프로젝트 : 나는 주위에 다음과 같은 일을 사용했다

답변

2

1 - 응용 프로그램 프로젝트 (그래서 응용 프로그램 작업중인 예를 들어 윈도우 응용 프로그램을 구성) 2 - 데이터 영역 프로젝트 (클래스 라이브러리 프로젝트 빌드 출력으로 DLL 년대)

2 단계 만드는 일이 ... 응용 프로그램 프로젝트의 프로젝트 링크 데이터 영역의 프로젝트에 대한 프로젝트 참조를 추가, (참조 - 참조 추가 - 프로젝트 탭)

3 단계 ... 데이터 영역의 프로젝트에서 부분 클래스 의 속성 만들기 : 를 - 로컬 데이터베이스 를 사용하는 경우 데이터베이스 파일을 추가 - SQL 클래스 항목 (하면 .dbml 파일)에 새 Linq에 추가 - 서버 탐색기에서 Designer 시트에 원하는 테이블을 추가하십시오. - 디자이너의 클래스 중 하나를 마우스 오른쪽 단추로 클릭하고 '코드보기' 을 선택하십시오. 이미 완료된 부분 클래스 정보가있는 파일로 이동합니다. - 할 부분 클래스 공개 - 테스트 속성 예 만들 : 공공 문자열 TEST { GET {반환 "TEST";} } - 데이터 영역 프로젝트 을 구축 - 당신은 지금 부분 클래스에 속성을 추가 한 을 디자이너 클래스 중 하나를 선택하십시오 ...

- 응용 프로그램 프로젝트에 데이터 소스 추가 - 데이터 소스 탭으로 이동하여 부분 클래스 속성을 추가 한 클래스를 선택하여 새 객체 데이터 소스를 추가하십시오. 당신이 데이터 소스보기에서 TEST 속성을 볼 수

  • ...

모든 일

나는 별도의 프로젝트에서하면 .dbml 파일과 부분 클래스를 가지고 있기 때문에 작동 생각하고 응용 프로그램 프로젝트에서 DLL을 통해 액세스 할 수 있습니다. Visual Studio에서 강제로 컴파일하고 응용 프로그램 프로젝트에서 모든 것을 사용할 수있게합니다 ... DLL과 반대로 모든 것이 부분 클래스를 벗어나는 한 프로젝트에있을 때 발생하는 것으로 보이는 별도의 임시 파일 데이터 소스 목록의 속성.

플러스는 너무 나쁘지 않다 ... 당신의 데이터 영역에 대해 별도의 프로젝트를 갖는 프로젝트 사이가 재사용합니다 .. : D

... 누군가 작동 희망
관련 문제