동적 개체는 런타임에 개체에 지연 바인딩할 때 Object 형식 외에 다른 방법을 제공합니다. 동적 개체는 네임스페이스에 정의된 동적 인터페이스를 사용하여 런타임에 속성 및 메서드와 같은 멤버를 System.Dynamic 노출합니다. 네임스페이스의 클래스를 System.Dynamic 사용하여 정적 형식 또는 형식과 일치하지 않는 데이터 구조로 작동하는 개체를 만들 수 있습니다. IronPython 및 IronRuby와 같은 동적 언어로 정의된 동적 개체를 사용할 수도 있습니다. 동적 개체를 만들거나 동적 언어로 정의된 동적 개체를 사용하는 방법을 보여 주는 예제는 연습: 동적 개체DynamicObject 만들기 및 사용 또는 ExpandoObject
Visual Basic은 IDynamicMetaObjectProvider 인터페이스를 사용하여 동적 언어 런타임 및 동적 언어인 IronPython 및 IronRuby와 같은 개체에 바인딩합니다.
IDynamicMetaObjectProvider 인터페이스를 구현하는 클래스의 예로는 DynamicObject 클래스와 ExpandoObject 클래스가 있습니다.
IDynamicMetaObjectProvider 인터페이스를 구현하는 개체에 대해 지연 바인딩 호출이 이루어지면 Visual Basic은 해당 인터페이스를 사용하여 동적 개체에 바인딩합니다. 지연 바인딩 호출이 인터페이스 IDynamicMetaObjectProvider 를 구현하지 않는 개체에 대해 수행되거나, 인터페이스 IDynamicMetaObjectProvider 호출이 실패하는 경우, Visual Basic은 Visual Basic 런타임의 지연 바인딩 기능을 사용하여 개체와 바인딩합니다.
참고하십시오
.NET