方法的类型参数无法从用法中推断出来
本文关键字:用法 推断出 类型参数 方法 | 更新日期: 2023-09-27 17:57:17
我是编程新手,当我为特定函数编写代码时,我发现以下错误。请帮助我解决此错误。
public IList<ScoreCardListItemTO> UpdateDate(bool IsScoreCardUpdate, bool IsInputHeaderUpdate, long ScoreCardId,
long ScoreCardSubmitResponseId, long QuestionId, DateTime UpdatedOn)
{
var parameters = new[]
{
new ObjectParameter("IsScoreCardUpdate", IsScoreCardUpdate ),
new ObjectParameter("IsInputHeaderUpdate", IsInputHeaderUpdate ),
new ObjectParameter("ScoreCardId", ScoreCardId ),
new ObjectParameter("ScoreCardSubmitResponseId", ScoreCardSubmitResponseId ),
new ObjectParameter("QuestionId", QuestionId),
new ObjectParameter("UpdatedOn", UpdatedOn),
};
ObjectResult items = ExecuteEqmFunction("SyncUpdateOnColumn", string.Empty );
return items;
}
错误显示在此行
ObjectResult items = ExecuteEqmFunction("SyncUpdateOnColumn", string.Empty );
return items;
错误状态
错误 42 方法的类型参数 'EQM。DataLayer.EqmRepository.ExecuteEqmFunction(string, string, params System.Data.Objects.ObjectParameter[])' 不能是 从使用情况推断。尝试显式指定类型参数。
正如
它所说,ExecuteEqmFunction
期待 3 或 4 个参数,其中你提供了前 2 个。
尝试
ObjectResult items = ExecuteEqmFunction("SyncUpdateOnColumn", string.Empty, parameters);
我缺乏上下文,但我不知道如果不提供它,为什么你会在这个范围内构建parameters
。
正如我在编辑您的问题时在错误定义中发现的那样,否则它不可见。
方法ExecuteEqmFunction<T>
是泛型的,需要类型T
。 泛型方法仅从传递的参数推断类型。由于类型 T 没有任何参数,因此需要显式指定该类型:
ObjectResult items = ExecuteEqmFunction<ObjectResult>("SyncUpdateOnColumn",
string.Empty, parameters);
假设T
是该方法的返回类型。