동적 개체 작업(Visual Basic)
동적 개체는 런타임에 개체에 늦게 바인딩하기 위해 Object
형식과는 다른 방법을 제공합니다. 동적 개체는 System.Dynamic 네임스페이스에 정의된 동적 인터페이스를 사용하여 런타임 시 속성이나 메서드 같은 멤버를 노출합니다. System.Dynamic 네임스페이스의 클래스를 사용하여 정적 유형(type)이나 정적 형식(format)과 일치하지 않는 데이터 구조체로 작업하는 개체를 만들 수 있습니다. IronPython이나 IronRuby 같은 동적 언어에서 정의한 동적 개체를 사용할 수도 있습니다. 동적 개체를 만드는 방법이나 동적 언어에 정의된 동적 개체를 사용하는 방법에 대한 예시는 연습: 동적 개체 만들기와 사용하기, DynamicObject 또는 ExpandoObject를 참조하세요.
Visual Basic은 IDynamicMetaObjectProvider 인터페이스를 사용하여 동적 언어 런타임의 개체와 IronPython이나 IronRuby 같은 동적 언어의 개체에 바인딩합니다. IDynamicMetaObjectProvider
인터페이스를 구현하는 클래스의 예로는 DynamicObject 클래스와 ExpandoObject 클래스가 있습니다.
IDynamicMetaObjectProvider
인터페이스를 구현하는 개체에 늦은 바인딩 호출이 발생하면 Visual Basic은 이 인터페이스를 사용하여 동적 개체에 바인딩합니다. IDynamicMetaObjectProvider
인터페이스를 구현하지 않는 개체에 늦은 바인딩 호출이 발생하거나 IDynamicMetaObjectProvider
인터페이스 호출이 실패하면 Visual Basic은 Visual Basic 런타임의 늦은 바인딩 기능을 사용하여 해당 개체에 바인딩합니다.
참고 항목
.NET