2015-10-09 5 views
0

J'ai rencontré une syntaxe que je n'avais jamais vue auparavant; quelqu'un peut-il expliquer la syntaxe de la ligne 2 dans le code suivant, en particulier les bits =]?Que signifie =] en C#?

//decide what to do with the response we get back from the bridge 
client.UploadStringCompleted += (o, args) =] Dispatcher.BeginInvoke(() =] 
{ 
    try 
    { 
     ResponseTextBox.Text = args.Result; 
    } 
    catch (Exception ex) 
    { 
     ResponseTextBox.Text = ex.Message; 
    } 
}); 

Malheureusement, recherches sur le Web ne semblent pas analyser =], ce qui est frustrant mes tentatives de trouver une explication!

+2

Ce n'est pas ']' mais juste '>' –

+1

D'où vient cet exemple? –

+0

https://msdn.microsoft.com/en-us/library/bb397687.aspx RTM –

Répondre

10

Une recherche rapide du texte dans le commentaire dans la liste de codes donnée conduit à this Channel 9 article. Il y a deux occurrences de cette déclaration, l'un qui présente les mêmes expressions lambda avec la syntaxe correcte =>:

//decide what to do with the response we get back from the bridge 
client.UploadStringCompleted += (o, args) => Dispatcher.BeginInvoke(() => 
{ 
    try 
    { 
     ResponseTextBox.Text = args.Result; 
    } 
    catch (Exception ex) 
    { 
     ResponseTextBox.Text = ex.Message; 
    } 

}); 

Il devient très clair, donc, que ce que vous regardez est une faute de frappe sur une partie de la auteur dudit article. Autant que je sache, il n'y a pas de construction C# légale constituée des caractères =], dans cet ordre, même en tenant compte des espaces. Dans votre exemple, c'est certainement une erreur de syntaxe.

+0

Merci beaucoup, pas étonnant que je sois confus! – danabnormal

+2

@BoltClock: Ne devrait-il pas être fermé comme offtopic/faute de frappe? parce que vous semblez être un mod et vous auriez attendu que vous fassiez cela plutôt que de mettre une réponse ... – Chris

+4

@Chris: Je me demandais la même chose tbh. La différence ici est que la faute de frappe provient d'une source externe en dehors de le contrôle de l'auteur, ce n'est pas une erreur commise par l'auteur en composant sa question – BoltClock