DomainModel.CreateElementLink 메서드
지정된 형식의 요소 링크를 만듭니다.
네임스페이스: Microsoft.VisualStudio.Modeling
어셈블리: Microsoft.VisualStudio.Modeling.Sdk.12.0(Microsoft.VisualStudio.Modeling.Sdk.12.0.dll)
구문
‘선언
Public Overridable Function CreateElementLink ( _
partition As Partition, _
elementLinkType As Type, _
roleAssignments As RoleAssignment(), _
propertyAssignments As PropertyAssignment() _
) As ElementLink
public virtual ElementLink CreateElementLink(
Partition partition,
Type elementLinkType,
RoleAssignment[] roleAssignments,
PropertyAssignment[] propertyAssignments
)
매개 변수
- partition
형식: Microsoft.VisualStudio.Modeling.Partition
요소 링크가 만들어지는 파티션입니다.일반적으로 DefaultPartition입니다.
- elementLinkType
형식: System.Type
DSL 정의에 정의된 비추상 도메인 관계입니다.
- roleAssignments
형식: array<Microsoft.VisualStudio.Modeling.RoleAssignment[]
새 요소 링크에 대한 관계 역할 할당 배열입니다.
- propertyAssignments
형식: array<Microsoft.VisualStudio.Modeling.PropertyAssignment[]
도메인 관계에서 해당 인스턴스에 대한 속성을 정의하는 경우 여기에서 해당 값을 할당할 수 있습니다.
반환 값
형식: Microsoft.VisualStudio.Modeling.ElementLink
만든 ElementLink입니다.
설명
이 링크를 만드는 방법은 일반적인 프로그래밍에 대 한 생성 된 코드 보다 더 적합입니다.
다음 예제에서는 최소한의 언어 솔루션 템플릿에서 생성 된 DSL에 정의 된 형식을 사용 합니다.
예제
이 메서드를 사용 하 여 연결을 만들려면:
ExampleElement element1, element2;
MyLanguageDomainModel dm = ...;
RoleAssignment sourceRole = new RoleAssignment(ExampleElementReferencesTargets.SourceDomainRoleId, element1);
RoleAssignment targetRole = new RoleAssignment(ExampleElementReferencesTargets.TargetDomainRoleId, element2);
ExampleElementReferencesTargets link1 =
dm.CreateElementLink(dm.Store.DefaultPartition,
typeof(ExampleElementReferencesTargets),
new RoleAssignment[] { sourceRole, targetRole},
null)
as ExampleElementReferencesTargets;
이 예제에서는 직접 도메인 관계를 사용 하 여 동일한 링크를 만듭니다.
ExampleElementReferencesTargets link = new
ExampleElementReferencesTargets(element1, element2);
도메인 관계 역할 속성을 연결 하는 클래스 정의 및 링크를 참조 하지 않을 경우 역할 속성을 사용 하 여 링크를 만들 수 있습니다. 최소한의 언어 DSL에는 ExampleElementReferencesTargets 역할 속성을 정의 하는 관계 Source 및 Target.
// Creates the link without returning a reference to it:
element1.Targets.Add(element2);
.NET Framework 보안
- 직접 실행 호출자의 경우 완전히 신뢰합니다. 이 멤버는 부분적으로 신뢰할 수 있는 코드에서 사용할 수 없습니다. 자세한 내용은 부분 신뢰 코드에서 라이브러리 사용을 참조하십시오.
참고 항목
참조
Microsoft.VisualStudio.Modeling 네임스페이스