22 votos

¿Atributo de método de C# no puede contener una expresión Lambda?

IntelliSense me dice que "La expresión no puede contener métodos anónimos o expresiones lambda". ¿De veras? No era consciente de esta limitación impuesta. ¿Es esto correcto? Supongo que estoy buscando un cheque de cordura aquí...


public delegate bool Bar(string s);

[AttributeUsage(AttributeTargets.All)]
public class Foo : Attribute
{
    public readonly Bar bar;

    public Foo(Bar bar)
    {
        this.bar = bar;
    }
}

public class Usage
{
    [Foo(b => b == "Hello World!")]        // IntelliSense Complains here
    public Usage()
    {
    }
}

Iteramos.com

Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X