문제

우리는 ColdFusion으로 작성된 레거시 앱에서 ASP.NET 웹 양식 응용 프로그램으로 전환하고 있습니다. 한 가지 요구 사항은 레거시 웹 서비스를 통해 이동하는 것입니다. 주소는 변경 될 수 있지만 입력 및 응답의 형식은 동일해야합니다. 저는 웹 서비스에 비교적 새로운 것이지만 .NET 웹 서비스 (아마도 다른 것)에 대한 SOAP 및 JSON 출력 형식이 모두 있다는 것을 알고 있습니다. 그러나 이것들 중 어느 것도 실력이 없습니다.

주어진 응답을 완전히 제어해야합니다. .aspx 페이지로 수행하는 경우 레거시 리포지스를 문자열에 작성한 다음 응답을 지우고 해당 문자열을 응답 및 호출 응답에 추가합니다.

.asmx와 비슷한 것이 있습니까?

더 똑똑한 방법이 있어도 여전히 ASP.NET 웹 응용 프로그램의 코드 기반과 통합 할 수 있습니까?

도움이 되었습니까?

해결책

완전한 응답 제어가 필요한 경우 ASPX 페이지 사이클 드라마를 건너 뛰고 대신 .ASHX를 사용합니다. 상당히 생생하고 필요한 것일 수 있습니다.

다른 팁

WCF를 사용하여 SOAP 대신 POX (Plain Old XML)를 구현할 수 있습니다.

webhttpbinding은 이것에 사용하기위한 바인딩입니다. "완전한 제어"가 기존 서비스를 명시 적 WCF 계약으로 리버스 엔지니어링 할 가능성을 무효화하는 경우 출력을 완전히 제어하려면 스트림.

필요한 형식에 따라 다릅니다.
ASMX 및 WCF는 Bona-Fide Soap 응답을 생성합니다.
내가 올바르게 이해하면 "비누는 작동하지 않습니다"라고 말했습니다. 홀수 형식이 필요한 경우 ASPX 페이지로 설명하는 방식으로 확실히 생성 할 수 있습니다. 그래도 프로그래밍 모델은 그리 좋지 않습니다.

어떤 버전의 Visual Studio를 사용하고 있습니까? Visual Studio 2008 (SP1)이 있다면 ASMX 웹 서비스를 작성하지 않아야합니다. Microsoft는 이제 해당 기술이 "유산"이라고 생각하며 버그를 해결할 계획이 없습니다.

대신 WCF 서비스를 작성해야합니다. 출력 형식을 완전히 제어 할 수 있습니다.

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