2010-05-20 2 views
7

저는 ColdFusion 환경이없는 .NET 개발자이지만 설정 한 wcf 서비스에 액세스하려면 cf 코드를 작성해야합니다. WsHttpBinding을 사용하여 IIS 7에서 호스팅되는 몇 가지 WCF 서비스가 있으며 서비스 참조를 .NET 클라이언트에 추가하고 클라이언트 클래스를 사용하여 서비스를 잘 사용할 수 있습니다..NET 개발자가 ColdFusion을 사용하여 wcf 서비스를 사용하는 데 도움이됩니다.

IT는 .NET 개발자를위한 매우 간단하다 :

var addressClient = new Service.AddressClient(); 
addressClient.AddressDTO[] addresses = addressClient.GetAddresses(); 

그것은 시각적 인 스튜디오는 WSDL에서 이러한 클라이언트 클래스를 설정하는 배후를 많이한다는 것을 분명하다.

cfinvoke를 사용하여 웹 서비스를 호출하는 ColdFusion 예제를 보았지만 실제로 WSDL에서 클라이언트 클래스를 설정하고 웹 서비스 응답에서 클라이언트 클래스를 만드는 경우는 없습니다.

그럼 어떻게 이런 식으로 coldfusion을 할 수 있을까요?

미리 감사드립니다.

답변

1

어도비는 실제로 웹 서비스 소비의 ColdFusion 코드에 WSDL에서 이동하는 데 필요한 모든 단계를 자세히 설명하는 아주 좋은 참고가 : 당신이 WCF에서 WsHttpBinding를 사용하는 경우,

ColdFusion: Consuming Web Services

당신의 웹 서비스는 예제의 WSDL과 똑같이 작동해야합니다 (WSDL을 예제 WSDL과 비교하면 모든 것을 손으로 만드는 방법에 대한 느낌을 얻을 수 있습니다).

0

당신은 닷넷 웹 서비스로 작동하도록 엔드 포인트를 구성해야합니다. 일단 그렇게하면 coldfusion에서 CreateObject를 사용하여 호출 할 수 있습니다. 여기에 간단한 예는 다음과 같습니다

<cfscript> 
    wcf = CreateObject("webservice","http://ws.spreety.com/TvOnline2009.svc?wsdl"); 
    variables.TalkShowImgHtml = wcf.GetGenreTalkShowImg("[email protected]"); 
</cfscript> 
<cfoutput>#variables.TalkShowImgHtml#</cfoutput> 
2

다른 점에서 올바른 사용자의 웹 서비스는 단순 데이터 형식을 반환하는 경우, CF 데이터 유형은 cf에 매핑하고 모든 것이 간단합니다. 경우에 따라 복잡한 데이터 유형을 cf 데이터 유형으로 직접 변환해야합니다.

cflib.org에는 이러한 기능을 처리 할 수있는 기능이 있으므로 사용자가 그 모습을보고 싶어 할 수 있습니다. 다음은 웹 서비스에서 cf 쿼리로 반환되는 .net 데이터 집합을 변환하는 함수입니다. 잘하면 이것은 아 - 하순 순간을 줄 것이다 :

http://www.cflib.org/index.cfm?event=page.udfbyid&udfid=1580

관련 문제