2012-09-07 2 views
1

WCF 웹 서비스에서 결과를 검색 할 수 없습니다. 결과는 항상 null입니다.Silverlight에서 WCF 웹 서비스 사용

TTServiceClient client1 = new TTServiceClient(); 
      client1.GetUserNameCompleted += new EventHandler<GetUserNameCompletedEventArgs>(client1_GetUserNameCompleted); 
      client1.GetUserNameAsync(); 

void client1_GetUserNameCompleted(object sender, GetUserNameCompletedEventArgs e) 
     { 
      txtUserName.Text = e.Result; 
     } 

내 웹 서비스 구현은 다음과 같습니다 :

은 여기 내 실버 클라이언트 코드

public string GetUserName() 
{ 
    return System.Web.HttpContext.Current.User.Identity.Name.ToString(); 
} 

그러나 나는 WCF 서비스의 결과를 얻을 수 있어요.

+0

웹 서비스 및 구성 (ClientConfiguration 및 Web.Config)에 대한 자세한 정보를 게시해야합니다. –

+0

공개 문자열 GetUserName() { return System.Web.HttpContext.Current.User.Identity.Name.ToString(); } – neo

+0

여기에 값을 가져오고 있지만 소비하지는 않습니다. – neo

답변

0

Silverlight 웹 서비스는 요청이 성공했는지 여부와 관계없이 예외를 throw하지 않습니다. 콜백에서 당신은, 그러나, 언제나처럼 귀하의 경우 뭔가에 오류 eventargs e.Errors 확인해야합니다 :

void client1_GetUserNameCompleted(object sender, GetUserNameCompletedEventArgs e) 
{ 
    if(e.Error != null) 
    { 
     throw new Exception("Web service error: " + e.Error.Message); 
    } 
    else 
    { 
     txtUserName.Text = e.Result; 
    } 
} 

는 기발한 e.Error 당신에게 문제에 대한 자세한 내용을 알려드립니다.