문제

WCF를 사용한 동적 프로그래밍 경험이 있는 사람이 있습니까?동적 프로그래밍이란 WSDL의 런타임 소비를 의미합니다.하나의 블로그 항목/도구를 찾았습니다.http://blogs.msdn.com/vipulmodi/archive/2006/11/16/dynamic-programming-with-wcf.aspx

여기에 좋은 도구를 찾은 사람이 있습니까?

도움이 되었습니까?

해결책

이것은 WCF의 더 이상한 측면 중 하나입니다.채널 팩토리를 동적으로 생성할 수 있지만 알려진 유형으로만 가능합니다.

완벽하지는 않지만 작동하는 솔루션을 생각해 냈습니다.

단일 메서드를 포함하는 "IFoo" 인터페이스를 만듭니다. Execute().ESB에서 동적으로 생성하십시오. ChannelFactory<IFoo> 연결하려는 끝점에 대해.연결 속성(URI 등)을 설정합니다.

이제 항상 "IFoo" 인터페이스를 구현하는 경우 서비스를 ESB에 동적으로 연결할 수 있습니다.

다른 팁

나는 오래 전에 SOAP 웹 서비스를 사용하여 이 작업을 수행했습니다.GotDotNet에는 내 생각에 도구가 있었습니다. 웹 서비스 스튜디오 익스프레스, WSDL 파일을 검사/구문 분석하고 이를 호출할 수 있는 코드가 있었습니다.

내 생각에는 클라이언트 생성 시 WSDL이 알려져 있으므로 런타임 시 연결될 필요가 없다고 가정합니다.런타임 시 WSDL을 검사하는 경우에도 프록시 생성 방법을 결정하기 위한 일종의 논리가 필요합니다.런타임 전에 WSDL을 사용할 수 없는 이유는 무엇입니까?웹 서비스는 일단 게시되면 변경되지 않는 인터페이스를 통해 상당히 정적이어야 합니다.

.NET CodeDom을 사용하여 WSDL에서 설명하는 웹 서비스를 실행하고 사용하기 위한 코드를 생성할 수 있습니다.WSDL은 표준 .NET XML 클래스를 사용하여 구문 분석할 수 있습니다.

저는 실제로 사용자가 런타임에 라우팅할 웹 서비스를 추가할 수 있는 작은 ESB를 만드는 것을 고려하고 있습니다.그래서 WSDL을 정적으로 추가할 수 없습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top