2009-07-08 5 views
1

Visual Studio에서 다음과 같은 경고가 나타납니다."DomainClass XXX는 추상이 아니며 모델의 루트가 아니며 그 안에 포함되어 있지 않습니다." 경고

"DomainClass ManagedField는 추상이 아니며 모델의 루트도 아니며 포함되지 않습니다."

경고가 맞습니다. 내 클래스가 추상 클래스가 아니기 때문에 모델의 루트가 아니어야합니다. 따라서 마지막 부분 인 "임베드되지 않은 임베디드"클래스는 ManagedField가 임베딩 관계에있는 다른 클래스로부터 상속받습니다.

그럼 왜이 경고 메시지가 나타나며 어떻게 제거합니까?

+0

이것은 당신이 얻을 수있는 유일한 경고를 포함하여 기술에 대한 모든 측면을 커버? 또한, ManagedField에 대한 모양 맵이 있습니까? –

+0

더 많은 경고가 하나 더 생깁니다. 변환 실행 중 : DomainClass ManagedField는 추상이 아니며 모델의 루트도 아니며 포함되지 않습니다. – Mark

+0

ManagedFiled의 부모 클래스는 Shape 객체의 구획에 매핑되지만 명시 적으로 자체 매핑되지는 않습니다. – Mark

답변

1

모든 클래스가 루트 클래스 (기본 클래스)에 어떻게 든 포함되어야하기 때문입니다. "DSL Explorer -> Editor -> Root Class"에서 루트 클래스를보고 설정할 수 있습니다.

"ManagedField"클래스에 대한 모양 표현이 있기 때문에이 오류가 발생합니다. 모든 모양은 루트 클래스 또는 일부 자식 포함 클래스에서 직접 다이어그램에 포함되어야합니다.

이것은 루트 클래스에서 "ManagedField"로의 퍼가기 관계를 만들어야 함을 의미합니다.

모든 쉐이프 인스턴스가 Diagram 클래스에서 Parented되어야하므로 이것은 DSL-Tools에 의해 시행됩니다.

마지막으로 Steve Cook, Gareth Jones, Stuart Kent 및 Alan Cameron Wills의 "Visual Studio DSL 도구로 도메인 별 개발"을 읽어 보시기 바랍니다.

이것은 당신의 진입 점해야하며 일부 고급 주제

관련 문제