使用Generic签名和参数调用方法

时间:2017-08-18 13:30:05

标签: c#

我有以下签名,其泛型类型和参数如下:

List<T> GetMyList<T>(T filter);

过滤器类型与列表类型不同。我试着像这样打电话:

var myList = repo.GetMyList<List<items>>(filter);

我不确定如何指定&#39;过滤器的类型。在方法调用中。这可能吗?

1 个答案:

答案 0 :(得分:2)

如果类型不同,则需要有2种泛型类型,如下所示:

protected users$ = Observable.defer(() => this.getUsersUncached())
    .publishReplay(1, 5000)
    .refCount()
    .take(1);

public getUsers(): Observable<User[]> {
    this.users$.shareReplay()
    return this.users$;
}

public getUsersUncached(): Observable<User[]> {
    return this.api.get('/user')
        .map((response) => response.json().data)
        .catch(this.handleError);
}