다음을 통해 공유


PropertyRef 요소(CSDL)

CSDL(개념 스키마 정의 언어)의 PropertyRef 요소는 엔터티 형식의 속성을 참조하여 해당 속성이 다음 역할 중 하나를 수행함을 나타냅니다.

  • 엔터티 키(ID를 확인하는 엔터티 형식의 속성 또는 속성 집합)의 일부분. 하나 이상의 PropertyRef 요소를 사용하여 엔터티 키를 정의할 수 있습니다. 자세한 내용은 Key 요소를 참조하십시오.

  • 참조 제약 조건의 종속 또는 주 끝. 자세한 내용은 ReferentialConstraint 요소를 참조하십시오.

PropertyRef 요소에는 Annotation 요소(0개 이상)만 자식 요소로 올 수 있습니다.

Ee473439.note(ko-kr,VS.100).gif참고:
Annotation 요소는 .NET Framework 버전 4 이상을 대상으로 하는 응용 프로그램에 대한 개념적 모델에서만 허용됩니다.이러한 모델에 대한 XML 네임스페이스는 https://schemas.microsoft.com/ado/2008/09/edm입니다.

적용 가능한 특성

다음 표에서는 PropertyRef 요소에 적용할 수 있는 특성에 대해 설명합니다.

특성 이름 필수 여부

Name

참조된 속성의 이름입니다.

Ee473439.note(ko-kr,VS.100).gif참고:
주석 특성(사용자 지정 XML 특성)을 원하는 수만큼 PropertyRef 요소에 적용할 수 있습니다.그러나 사용자 지정 특성은 CSDL에 예약된 XML 네임스페이스에 속할 수 없습니다.두 사용자 지정 특성의 정규화된 이름은 서로 같을 수 없습니다.

예제

다음 예제에서는 엔터티 형식(Book)을 정의합니다. 엔터티 키는 엔터티 형식의 ISBN 속성을 참조하여 정의됩니다.

<EntityType Name="Book">
  <Key>
    <PropertyRef Name="ISBN" />
  </Key>
  <Property Type="String" Name="ISBN" Nullable="false" />
  <Property Type="String" Name="Title" Nullable="false" />
  <Property Type="Decimal" Name="Revision" Nullable="false" Precision="29" Scale="29" />
  <NavigationProperty Name="Publisher" Relationship="BooksModel.PublishedBy"
                      FromRole="Book" ToRole="Publisher" />
  <NavigationProperty Name="Authors" Relationship="BooksModel.WrittenBy"
                      FromRole="Book" ToRole="Author" />
</EntityType>

다음 예제에서는 두 PropertyRef 요소를 사용하여 두 속성(IdPublisherId)이 참조 제약 조건의 주 끝 및 종속 끝임을 나타냅니다.

<Association Name="PublishedBy">
  <End Type="BooksModel.Book" Role="Book" Multiplicity="*" >
  </End>
  <End Type="BooksModel.Publisher" Role="Publisher" Multiplicity="1" />
  <ReferentialConstraint>
    <Principal Role="Publisher">
      <PropertyRef Name="Id" />
    </Principal>
    <Dependent Role="Book">
      <PropertyRef Name="PublisherId" />
    </Dependent>
  </ReferentialConstraint>
</Association>

참고 항목

개념

Entity Framework 개요
CSDL 사양
Schema 요소(CSDL)

기타 리소스

CSDL, SSDL 및 MSL 사양
ADO.NET Entity Data Model Tools
entity key (Entity Data Model)