有可能抽象Func声明吗?

时间:2014-10-07 16:33:11

标签: c# delegates func

我在两个看起来几乎相同的类中有一个方法调用:

public override async Task<IEnumerable<TEntity>> GetAsync(
    Func<IQueryable<TEntity>, IQueryable<TEntity>> queryShaper, 
    CancellationToken cancellationToken)

public override async Task<IEnumerable<TEntity>> GetAsync(
    Func<ISqoQuery<TEntity>, ISqoQuery<TEntity>> queryShaper, 
    CancellationToken cancellationToken)

我真的很喜欢将签名结合起来(这样我就不必通过以下操作来拥有两个接口:

public override async Task<IEnumerable<TEntity>> GetAsync(
    IQueryShaper queryShaper, 
    CancellationToken cancellationToken)
{


}

并在IQueryShaper上有一个函数,它根据实现返回正确的Func<>声明?

这样的事情看起来有可能吗?任何人都有任何想法,我怎么能达到我的目标?

0 个答案:

没有答案