웹 서비스로 데이터를 보유하기위한 클래스의 '공통'라이브러리를 공유하는 대형 관리자 winforms 응용 프로그램을 상속 받았습니다. 내가 가지고있는 문제는 웹 서비스 호출에서 클래스의 채워진 인스턴스를 반환하면 클라이언트에서 다른 유형으로 나오고 다른 '공통'프로젝트 로직을 사용하여 조작 할 수 없다는 것입니다.winforms 클라이언트와 웹 서비스간에 공통 클래스를 사용하려면 어떻게해야합니까?
웹 서비스가 Common.Widget 유형의 객체를 반환하더라도 와이어를 통해 전송하기 위해 해당 객체를 래핑합니다. 이 작업이 완료되면 .Net이 InvalidCastException을 throw하기 때문에 개체를 다시 '일반적인'형식으로 캐스팅 할 수 없습니다.
WCF 및 DataMember 특성을 사용하여이 작업을 수행했지만이 프로젝트를 WCF로 업그레이드 할 수 없습니다.이 작업은 매우 커서 테스트 서버는 Win2K입니다 (Win2K에서는 .Net 3+ 없음).
이렇게 쉽게 할 수있는 방법이 있습니까? 아니면 웹 서비스에서 가져온 모든 데이터를 공용 라이브러리의 원시 형식으로 다시 변환해야합니까? 사전에
감사
라이언
모든 개체를 다소 불쾌한 방식으로 다시 만들고 코드는 스파 스 테이며 인스턴스가 웹 서비스인지 또는 공통인지 여부를 확인할 수 없습니다. WCF로 마이그레이션 할 때까지 컬렉션 등의 수동 번역을 할 것입니다. 감사합니다. –