1

boolean在班上有财产。我想将它作为参数传递给一些需要 Func 的函数。有没有办法进行转换?或者我应该只创建一个返回bool而不是属性的函数?

4

4 回答 4

7

如果函数真的需要 a Func<bool>(一个不带参数并返回 a 的函数bool),你可以这样做:

SomeFunction( () => myClass.BoolProperty);
于 2013-02-25T08:43:57.800 回答
0

您可以传递一个 lambda:

FuncToCall(() => myObject.MyBoolProperty);

于 2013-02-25T08:44:03.183 回答
0

怎么样

SomeFunction(()=>SomeBool);

其中 SomeBool 它是您班级的布尔属性。

于 2013-02-25T08:44:36.223 回答
0

在 func 方法中传递您的属性

Method1(c=> MyProperty);

func / 属性看起来像这样

public bool MyProperty
{
   get { return true; }
}

public void Method1(Func<bool, bool> func)
{ 
}

如果函数需要一个只返回这样的 bool 的函数:

public void Method1(Func<bool> func)
{ 
}

这是称呼它的方式

Method1(()=> MyProperty);
于 2013-02-25T08:46:20.570 回答