2010-05-12 10 views
1

저는 항상 wcf 서비스와 상호 작용하여 데이터와 상호 작용할 asp.net 응용 프로그램을 가지고 있습니다. 내 질문은 serivce가 실행되지 않거나 몇 가지 이유가 시간 초과 된 경우입니다. 내 소비 응용 프로그램에서 serivce 예외를 처리해야합니다.asp.net에서 서비스를 사용할 수 없음 오류를 처리합니다.

우리는 서비스에 직면 한 런타임 예외를 처리하기 위해 faultcontract 예외를 사용하고 있습니다. 하지만 서비스 자체가 실행되고 있지 않다면 "서비스를 사용할 수 없습니다. 서비스를 실행하십시오."라는 메시지를 사용자에게 던지려면 어떻게해야합니까?

감사합니다.

감사합니다, 키란

답변

0

가정 서비스 받아들이는 HTTP GET, 하나의 옵션은 같은 것을 사용하여 클라이언트에서 서비스 메타 데이터를 심문 것 :의 "를 추가

var svcUri = new Uri("http://yourhost/service.svc?wsdl"); 
MetadataExchangeClient mexClient = new MetadataExchangeClient(svcUri, MetadataExchangeClientMode.HttpGet); 
var isHealthy = true; 
try 
{ 
    MetadataSet metadata = mexClient.GetMetadata(); 
} 
catch (Exception ex) 
{ 
    isHealthy = false; 
} 

는 또 다른 옵션이 될 것이다 하트 비트 (heartbeat) "메소드를 사용하여 주기적으로 클라이언트에서 호출 할 수있는 int 또는 bool을 서비스 자체에 반환합니다.

관련 문제