2012-02-02 2 views
0

저는 WP7의 webservice를 사용하고 있습니다 만, 전에 본적이없는 문법이 있습니다.이 웹 메소드를 구현하기 전에 먼저 내가하는 일을 모른 채로 읽어야합니다. 나는 그것에 대해 몇 페이지를 찾으려고 노력했지만, 클라이언트 측에 관해서는 아무것도 찾을 수없고, 웹 서비스를 만드는 방법 만 찾을 수있다. 먼저 문자열을 반환 유형으로 사용했지만 void로 표시되는 메서드를 호출하려고했습니다. 어떤 검색을 한 후에는 서버로부터 응답을 얻어야 만한다는 것을 알아 냈습니다. 서버가 evenListener (또는 무엇인가, 내가 틀렸다면 수정하십시오)를 발생시킵니다. 그러나이 EventListener에는 이전에 본 적이없는 객체 반환 유형이 있습니다. 그래서 나는 그냥 야생으로 갈 수 있었고 사용 된 곳에서 그대로 프로젝트를 복사하여 붙여 넣거나 열심히 시도해 보았습니다.하지만 그 주제에 대해 읽어보기로했습니다. 나는 그것을 구현하는 프로젝트를 :웹 서비스 호출에 대한 링크가 있습니까? WP7

_channel.ShellToastNotificationReceived += (s, e) => Deployment.Current.Dispatcher.BeginInvoke(() => ToastReceived(e)); 

사람이 상세히 설명되어있는 링크가 있나요?

답변

1

이것은 람다 식으로 이벤트 처리기로 사용됩니다. 람다 식은 C# 3.0에서 소개되었으며 반복, 표현식 및 명령문뿐만 아니라 이벤트 처리기에도 사용할 수 있습니다. 델리게이트 인스턴스 생성을 사용하여 명명 된 메서드에서 람다 이벤트 처리기로 이동하는 방법을 설명하는 문서는 다음과 같습니다. Lambda Expressions in 5 Minutes.

button1.Click += new EventHandler(Button1_Click); 
void Button1_Click(object sender, EventArgs e) 
{ 
    Debug.Print("Button1 click handled by named method."); 
} 

에 :이 도움이

button1.Click += (sender, e) => Debug.Print("Button1 click handled by lambda expression with type inference."); 

희망 한마디로

당신은에서 간다! ;)

+0

대단히 고맙습니다. 제가 도움이 될 것이라고 생각합니다. =) – GeekPeek

+0

람다 표현식에서 리턴 유형을 처리하는 방법은 아직도 잘 모르겠습니다. – GeekPeek

+1

위임자를 사용해야합니다. MSDN의이 기사에서는 람다 표현식/위임자에 대한 모든 것을 설명합니다. http://msdn.microsoft.com/en-us/library/bb397687.aspx뿐만 아니라 ScottGu의 아주 좋은 기사 : http : //weblogs.asp. net/scottgu/archive/2007/04/08/new-orcas-language-feature-lambda-expressions.aspx. 희망이 도움이! – Abbas

관련 문제