런타임에서 클래스를 동적으로 생성하는 방법?
다음 시나리오를 고려하십시오 : 필드 세트와 그 유형을 나타내는 클래스가 있습니다 :추가로, 사전 정의 된 값을 가진 필드 객체 목록이 있습니다. System.Reflection.Emit
를 사용한 솔루션이 동적 클래스 생성을 달성하려면 System.Reflection.emit 네임 스페이스의 기능을 활용할 수 있습니다. 네임 스페이스에 약간의 숙련도가 필요하지만 런타임에서 클래스를 생성하기위한 강력한 메커니즘을 제공합니다.public class Field { public string FieldName; public string FieldType; }구현 세부 사항
처음에는 파운데이션으로 사용될 타입 빌더 객체를 만들어야합니다. 동적 수업을 위해. 여기에는 유형 서명, 어셈블리 및 모듈을 정의하는 것이 포함됩니다. Anschließend, 목록의 각 필드마다 동적 클래스 내에서 속성을 생성해야합니다.
{ "EmployeeID", "int" }, { "EmployeeName", "string" }, { "Designation", "string" }속성을 만들려면 먼저 부동산의 가치를 보유 할 개인 필드를 설정합니다. 그 후, 당신은 속성의 속성을 정의하고 그 가치를 얻고 설정하기위한 방법을 만듭니다. 이 방법은 개인 필드를 사용하여 속성의 상태를 조작합니다.
예제 코드
이 접근법을 활용하여 지정된 필드 정의를 준수하는 클래스를 동적으로 생성 할 수 있습니다. 런타임에서 유연하고 적응 가능한 객체 표현을 생성합니다위 내용은 System.Reflection.emit을 사용하여 런타임에 C# 클래스를 동적으로 생성하는 방법?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!