llamar funcion desde c# anonymous-function

c# - llamar funcion javascript desde html href



¿Cómo llamar a la función anónima en C#? (2)

A continuación, le explicamos cómo puede utilizar dicha construcción para encerrar el contexto

Control.Click += new Func<string, EventHandler>((x) => new System.EventHandler(delegate(object sender, EventArgs e) { }))(valueForX);

Me interesa si es posible usar C # para escribir un código análogo a este Javascript:

var v = (function() { return "some value"; })()

Lo más que pude lograr es:

Func<string> vf = () => { return "some value"; }; var v = vf();

Pero quería algo como esto:

// Gives error CS0149: Method name expected var v = (() => { return "some value"; })();

¿Hay alguna forma de llamar a la función dejándola anónima?


Sí, pero C # es de tipo estático, por lo que debe especificar un tipo de delegado.

Por ejemplo, usando la sintaxis del constructor:

var v = new Func<string>(() => { return "some value"; })(); // shorter version var v = new Func<string>(() => "some value")();

... o la sintaxis de conversión, que puede ensuciarse con demasiados paréntesis :)

var v = ((Func<string>) (() => { return "some value"; }))(); // shorter version var v = ((Func<string>)(() => "some value"))();