如何定义泛型类的扩展方法?

Sam*_*m P 8 c# generics methods

我有一个通用接口:

public IRepository< T >
{

    void Add(T entity);

}
Run Code Online (Sandbox Code Playgroud)

和一个班级:

public class Repository< T >:IRepository< T >
{

    void Add(T entity)
    {      //Some Implementation
    }

}
Run Code Online (Sandbox Code Playgroud)

现在我想制作上述接口的扩展方法.我做了以下课程:

public static class RepositoryExtension

{

    public static void Add(this IRepository< T > dataAccessRepository, T entity, string additionalValue)

    {
        //Some Implementation
    }

}
Run Code Online (Sandbox Code Playgroud)

但我在扩展Add方法中得到错误.它无法识别我传递给IRepository的Type'T'.我无法将此类型传递给我的Extenstion Methods类,即RepositoryExtension <T>.请以适当的方式指导.

Roh*_*ith 17

public static void Add<T>(this IRepository< T > dataAccessRepository, T entity, string additionalValue)
Run Code Online (Sandbox Code Playgroud)

试试吧.<T>在添加之后立即注意