代码:
f()
我收到错误:
参数2:无法从方法组转换为InfoItem
我已经完成了网站上的其他错误,但我仍然感到茫然。事情的签名对我来说是正确的,我认为这是网站上其他答案的错误!
有人能指出我正确的方向吗?
答案 0 :(得分:2)
public static ValidationModel ValidateInt(InfoItem item)
是一个
Func<InfoItem, ValidationModel>
,而不是Func<ValidationModel, InfoItem>
。
输出项目始终位于Func
答案 1 :(得分:2)
由于ValidateInt
方法返回ValidationModel
,因此字典的值类型应为Func<InfoItem, ValidationModel>
。这编译:
Dictionary<ValidationType, Func<InfoItem, ValidationModel>> itemValidator = new Dictionary<ValidationType, Func<InfoItem, ValidationModel>>()
{
{ ValidationType.Int32, Validator.ValidateInt }
};