如何对对象使用c# Action
本文关键字:Action 对象 | 更新日期: 2023-09-27 18:06:10
我试图创建一个通用的重试策略,传入一个对象和一个函数来调用该对象。我知道这是可能的方法,但我不确定如何包括对象。
例如,我有一个api对象,它有许多不同的方法,我想把它们作为动作传递。如果发生某种类型的异常,我需要更新api对象中的值。
任何想法?由于
public T Do<T>(Api api, Func<T> action, TimeSpan retryInterval, int retryCount = 3)
{
var exceptions = new List<Exception>();
for (int retry = 0; retry < retryCount; retry++)
{
try
{
return api.action();
}
catch (Exception ex)
{
您想要Func<Api, T>
并将其命名为action(api)