모델 정의 함수

모델 정의 함수는 개념적 모델에 정의된 함수입니다. 모델 정의 함수의 본문은 데이터 소스에서 지원되는 규칙이나 언어에 독립적으로 함수를 표현할 수 있는 Entity SQL로 표현됩니다.

모델 정의 함수 정의에는 다음 정보가 들어 있습니다.

  • 함수의 이름입니다. (필수)

  • 반환 값의 형식입니다. (선택 사항)

    참고 항목

    반환 형식을 지정하지 않으면 반환 값은 void입니다.

  • 매개 변수 정보 (선택 사항)

  • 함수의 본문을 정의하는 Entity SQL

모델 정의 함수는 출력 매개 변수를 지원하지 않습니다. 모델 정의 함수를 작성할 수 있도록 이러한 제한이 적용됩니다.

예시

다음 다이어그램에서는 세 가지 엔터티 형식 Book, PublisherAuthor가 포함된 개념적 모델을 보여 줍니다.

Screenshot that shows a model with published date.

ADO.NET Entity FrameworkCSDL(개념 스키마 정의 언어)이라는 DSL(Domain-Specific Language)을 사용하여 개념적 모델을 정의합니다. 다음 CSDL에서는 위 다이어그램의 Book 인스턴스가 출판된 이후의 년 수를 반환하는 함수를 개념적 모델에 정의합니다.

<Function Name="GetYearsInPrint" ReturnType="Edm.Int32" >
      <Parameter Name="book" Type="BooksModel.Book" />
      <DefiningExpression>
        Year(CurrentDateTime()) - Year(cast(book.PublishedDate as DateTime))
      </DefiningExpression>
    </Function>

참고 항목