.NET 프레임 워크의 일부 클래스에서 제네릭보다 System.Type 인수가 선택되는 이유는 무엇입니까?

.NET 프레임 워크의 여러 내장 클래스 / 메서드가 System.Type의 인수를 취한다는 것을 알았습니다. 제 생각에는 제네릭을 사용하는 것이 더 깨끗했을 것입니다. 예를 들어, DataContractSerializer 인스턴스를 만들려면

var s = new DataContractSerializer<MyCustomClass>();

대신에

var s = new DataContractSerializer(typeof(MyCustomClass));

을 작성해야합니다. 어떤 방법이 "최고"인지에 대한 토론을 찾고 있지 않습니다. 좋은 이유가 있는지 알고 싶은 호기심이 많습니다. 어느 쪽이든. :)

(내 머리에서 가져온) 몇 가지 예는 다음과 같습니다. -System.Xml.Serialization.XmlSerializer (생성자) -System.ServiceModel.ServiceHost (생성자 및 몇 가지 메서드) -System.Web.Mvc.ModelBinderAttribute

5
задан Ozzy 7 June 2011 в 13:48
поделиться