나는 "안녕하세요 세상"응용 프로그램을 작성하는 "재미있는"과제를 받았습니다. 유일한 조건은 반사를 사용한다는 것입니다.이 조건을 충족시켜야하는 구체적인 방법은 없지만 영리하거나 우아하거나 '멋진'용도는 재미 있습니다. 외부 라이브러리를 삽입하거나 IHelloWorldMessageProvider 컴포지션 컨테이너 모조를 수행하는 것 외에 많은 옵션이 없습니다. 누군가 나를 돌봐 주는가?C#에서 hello world를 작성하는 작업이 주어진 경우 ... 리플렉션을 사용하여 리플렉션을 사용하는 영리한 방법은 무엇입니까?
1
A
답변
3
개인적으로 ... 내가 동적 컴파일로 이동해야합니다. 완전한 예제를 쓸 시간이 없지만 워크 플로는 다음과 같이됩니다.
시작 응용 프로그램.
Hello World C# 코드가 포함 된 문자열을 만듭니다.
- 는 런타임에 DLL을 만들기 위해 응용 프로그램에서 컴파일러를 호출합니다.
반사를 사용하여 생성 된 어셈블리를로드합니다.
- 는 적절한 유형 및 방법 가져 오기 ... 다음 (따라서 "안녕하세요"라는 메시지가 표시)를 호출합니다.
체크 아웃 더 동적 컴파일의 과정을 설명 페이지 :
1
문자열 "안녕하세요 세계는"응용 프로그램을 구현하는 클래스를 검사하여 런타임에 동적으로 만들 수 있습니다. 말 : 나는 반사를 사용하여 복잡하고 흥미로운 안녕하세요 세계 응용 프로그램을 작성하기를 원한다면 class hello { void world() {} }
+0
지루한 상점을! 더 흥미로운? – Idahovandal256
관련 문제
- 1. 마스터 페이지에서 리플렉션을 사용하는 방법은 무엇입니까?
- 2. 리플렉션을 사용하여 변수 이름을 얻는 방법은 무엇입니까?
- 3. 리플렉션을 사용하여 이름으로 메소드를 가져 오는 경우 리팩토링하는 방법은 무엇입니까?
- 4. dotnet에서 리플렉션을 사용하는 것과 성능이
- 5. 리플렉션을 사용하여 유형을 동적으로 인스턴스화하는 방법은 무엇입니까?
- 6. 리플렉션을 사용하여 WPF에서 UserControl을로드하는 방법은 무엇입니까?
- 7. 리플렉션을 사용하여 기본 생성자를 얻는 방법은 무엇입니까?
- 8. 리플렉션을 사용하여 클래스 인스턴스화
- 9. 리플렉션을 사용하여 종속성 작업
- 10. 리플렉션을 사용하는 .NET 동적 오브젝트
- 11. NoSuchMethodException 자바 리플렉션을 사용하는 동안
- 12. 에뮬레이터가 hello world를 실행하지 않습니다
- 13. 리플렉션을 사용하여 지원 중단을 찾으십시오.
- 14. 리플렉션을 사용하여 엔티티의 해당 속성에 쓸 수있는 방법은 무엇입니까?
- 15. enum 유형이 클래스 일 때 Java 리플렉션을 사용하는 방법은 무엇입니까?
- 16. 런타임 동안 리플렉션을 사용하여 주어진 이벤트가 등록되어 있는지 확인하십시오.
- 17. 리플렉션을 사용하여 객체를 재귀 적으로 직렬화하는 방법은 무엇입니까?
- 18. 리플렉션을 사용하여 MustOverride 속성을 만드시겠습니까?
- 19. 리플렉션을 사용하여 사전에서 정보 얻기
- 20. 리플렉션을 사용하여 HttpPostedFile의 인스턴스 만들기
- 21. 리플렉션을 사용하여 변수 이름 얻기
- 22. 리플렉션을 사용하여 메소드를 검사하는 방법
- 23. 리플렉션을 사용하여 이벤트에 대한 대리인 연결
- 24. 리플렉션을 사용하여 정적 클래스의 목록을 얻으십시오
- 25. C++에서 기본 리플렉션을 구현하는 방법은 무엇입니까?
- 26. .NET 리플렉션을 사용하는 개인적인 방법. 왜?
- 27. 리플렉션을 사용하여 비교 자 클래스를 만드는 방법은 무엇입니까?
- 28. 리플렉션을 사용하여 클래스가 내부 클래스인지 확인하는 방법은 무엇입니까?
- 29. 유형 이름이 문자열 인 경우 리플렉션을 사용하여 일반을 구성하는 방법은 무엇입니까?
- 30. 리플렉션을 사용하여 클래스 메서드 가져 오기
항상 재미 있습니다. MEF를 활용하는 것이 반영으로 간주 될까요? MEF는 리플렉션을 사용하여 작동하므로 왜 보이지 않습니다. – Idahovandal256