유형 전달이 사용되는 실생활 시나리오는 누구나 제공 할 수 있습니까?유형 전달
유형 전달
답변
BCL 라이브러리는 일반적으로 TypeForwardedTo
속성을 사용합니다. 예를 들어 Func<>
스타일 대리자는 3.5 프레임 워크의 System.Core에서 4.0 프레임 워크의 mscorlib로 이동되었습니다.
당신은 현실 세계를 볼 수는 매니페스트 노드에서 ILDASM, 더블 클릭 4.0에서 System.Core.dll을 열고 다음
.class extern forwarder System.Func`1
{
.assembly extern mscorlib
}
.class extern forwarder System.Func`2
{
.assembly extern mscorlib
}
.class extern forwarder System.Func`3
{
.assembly extern mscorlib
}
msdn에서 예를 들면 다음과 같습니다
, 응용 프로그램이 Utility.dll이라는 어셈블리의 예 클래스를 사용하여 가정합니다. Utility.dll 개발자는 어셈블리를 리팩터링하기로 결정할 수 있으며 프로세스에서 Example 클래스를 다른 어셈블리로 이동할 수 있습니다. 이전 버전의 Utility.dll이 새 버전의 Utility.dll 및 해당 부속 어셈블리로 교체되면 Example.dll 클래스를 사용하는 응용 프로그램은 새 버전의 Utility.dll에서 Example 클래스를 찾을 수 없기 때문에 실패합니다.
Utility.dll 개발자는 TypeForwardedToAttribute 특성을 사용하여 Example 클래스에 대한 요청을 전달함으로써이를 피할 수 있습니다. 특성이 Utility.dll의 새 버전에 적용된 경우 Example 클래스에 대한 요청은 이제 해당 클래스가 들어있는 어셈블리로 전달됩니다. 기존 응용 프로그램은 재 컴파일없이 정상적으로 계속 작동합니다.
일반적으로 라이브러리 클래스에서 유연성/리팩터링 기능을 허용하는 것으로 보입니다. 나는 MSDN 블로그에 도움이되는 기사를 발견했다. 이 기사에서 예제 중 하나는 기존 라이브러리가 2 개의 별도 DLL로 분리되어있는 것을 보여줍니다. 라이브러리를 사용하는 응용 프로그램은 유형 전달이 유형이 dll의 최신 버전에서 다른 dll로 이동되었음을 고려하지 않아도됩니다. 프레임 워크의 다른 버전 어셈블리 사이의 유형을 이동할 때
- 1. 메뉴를 통해 예외 유형 전달
- 2. DataContract 알려진 유형 - 전달 배열
- 3. 내부 링크 전달 : 권장 리디렉션 유형
- 4. CSV 파일 처리를위한 함수 전달 : 유형 오류
- 5. 일반 클래스의 유형 매개 변수로 인스턴스화 된 System.Type 전달
- 6. SSRS 양식 매개 변수 전달 : 입력 유형 제출 및 이미지
- 7. JNI를 사용하여 Java에서 C로 또는 그 반대로 데이터 유형 전달
- 8. Castle Windsor 구성 요소 등록의 컨텍스트에서 "전달 유형"은 무엇입니까?
- 9. 전체 조립품에 대해 유형 전달 조립품을 생성하는 방법은 무엇입니까?
- 10. NSString "인수 전달 ... 고유 Objective-C 유형 경고"
- 11. 포트란 90 사용자 정의 유형, 값으로 전달 하시겠습니까?
- 12. 전달 된 backbone.js 모델 인스턴스의 모델 유형 얻기
- 13. C++에서 Java/Java로 C/++로 자료 유형 전달
- 14. WCF에 매개 변수 전달 Ninject 2를 사용하는 ServiceHost 유형
- 15. 일반 유형 매개 변수 및 유형
- 16. Byte를 SmallInt로 전달 하시겠습니까?
- 17. Groovy의 동적 유형 유형
- 18. _ssl.sslwrap 함수의 유형 적용
- 19. 패스 유형
- 20. 유형
- 21. 유형
- 22. 유형
- 23. 템플릿 포인터를 전달-선언
- 24. C++, GTK + 및 String 유형
- 25. cfwindow에 변수 전달 및 전달
- 26. jQuery를 AJAX 유형 : 값 문제
- 27. 값 유형 및 참조 유형
- 28. vsprops의 문자 유형/구성 유형
- 29. numpy.arange() 인수 전달
- 30. 콘텐츠 유형 및 표현
우수한 예와 비슷한 라인의 모든보고 이것 사용합니다. 이제 WCF 해석자 만이'TypeForwardedToAttribute'를 존중한다면 ;-p –