2010-06-28 4 views
1

Web Service를 호출하기 위해 WebService에 대한 참조를 사용하는 Win Mobile 6.0 .NET CF 응용 프로그램이 있습니다. 장치가 WLAN 범위에있는 정상적인 상황에서 웹 메서드는 장치에 의해 동 기적으로 실행될 수 있습니다. 문제는 기기가 오프라인 상태가 될 때 (Wi-Fi 또는 GPRS 서비스가 제공되지 않음)입니다. 응용 프로그램은 계속 작동 할 수 있지만 웹 메서드 호출을 "버퍼링"하여 모든 작업을 로컬에 저장하고 장치가 다시 온라인 상태가되면 보류중인 모든 웹 요청이 WebService에서 실행되기를 원합니다. .NET CF의 일반적인 솔루션이 있습니까? 아니면 수동으로 구현해야합니까? 내가 생각할 수있는 유일한 생각은 수동으로 WebService의 인터페이스를 추출하고 WebService가 사용 가능한지 여부를 확인하고이 경우 모든 Web 메서드 호출을 WebService 프록시로 참조하는 사용자 지정 구현을 구현하는 것입니다. WebService를 사용할 수 없으면 (인터넷에 연결되지 않은 경우 등), 내 로컬 사용자 정의 구현이 호출됩니다. 즉, 로컬 파일 (즉, 로컬 파일)에서 WebMethod 호출을 호출합니다. .NET CF는 WCF에서 일종의 트랜잭션 메커니즘을 지원합니까?.NET Compact Framework - "offline webservices"support

감사 도미니크 확실히이 작업을 수행하는 상자 밖으로 사용할 수 아무것도 없다

+0

웹 서비스 요청에 응답이 필요한 경우 수행 할 작업은 무엇입니까? 고객이 웹 서비스 호출이 완료되기를 기다릴 필요가 있다면 무엇을 할 것입니까? –

+0

제 경우에는 문제가되지 않습니다. 내 모바일 응용 프로그램이 오프라인으로 "투명하게"작업 할 수있게해야합니다. – cubesoft

답변

1

link text. 설명하는 동작은 트랜잭션 동작이 아니라 보장 된 배달 동작입니다. Microsoft는 Disconnected Service Agent Application Block을이 유형의 시나리오를 해결하는 데스크탑 SCSF의 일부로 가지고 있습니다.

패턴 및 프랙티스 팀은 오프라인 응용 프로그램 블록 (sample here)으로 Mobile Client Software Factory에서 축소 된 버전을 수행했으나 MCSF의 다른 많은 것들이 데스크톱 SCSF에서 포팅되지 않았다는 것을 알고 있어야합니다. 임베디드 장치의 성능이나 메모리에 대한 실제적인 생각은 실제 장치에서 실제로 사용할 수 없습니다 (완전히 멋지다는 말). 하지만 OAB는 합리적인 구현 인 것으로 보이며 원하는대로 할 것입니다.

관련 문제