我有以下方法在 aT中使用Func:
public void DoSomething<T>(string someString, Func<T, bool> someMethod)
{
if(someCondition)
{
string A;
bool resultA = someMethod(A);
}
else
{
string[] B;
bool resultB = someMethod(B);
}
// Some other stuff here ...
}
我正在DoSomething以下列方式调用该方法:
DoSomething<string>("abc", someMethod);
DoSomething<string[]>("abc", someMethod);
并且 someMethod 存在,具有以下定义:
bool someMethod(string simpleString);
bool someMethod(string[] stringArray);
现在编译失败,方法中出现以下错误DoSomething:
cannot convert from 'string' to 'T'
cannot convert from 'string[]' to 'T'
我无法弄清楚问题是否有解决方案,或者我尝试的方法不可行。它看起来类似于问题如何使用泛型类型参数传入 func?,虽然它对我的场景没有帮助。
沧海一幻觉
繁花不似锦
相关分类