我真的很困惑這裏。你能幫我麼?查看代碼;類型參數'T'與來自外部類型的類型參數具有相同的名稱'...
我想爲我的解決方案構建一個只使用一個存儲庫的結構。要查詢我使用IQueryBuilder的特定查詢。其實我一直在尋找一個好的smaple爲對象查詢和我發現這一個here
public interface IQueryBuilder<T> where T : class
{
IQueryBuilder<T> Where(Expression<Func<T, bool>> predicate);
IQueryBuilder<T> Include(Expression<Func<T, object>> path);
IQueryBuilder<T> OrderBy(Expression<Func<T, object>> path);
IQueryBuilder<T> OrderByDescending(Expression<Func<T, object>> path);
IQueryBuilder<T> Page(int page, int pageSize);
T FirstOrDefault();
Task<T> FirstOrDefaultAsync();
List<T> ToList();
Task<List<T>> ToListAsync();
int Count();
Task<int> CountAsync();
}
這裏的庫代碼。
public interface IRepository<T> : IDisposable
{
IQueryBuilder<T> Query<T>() where T : class;
}
到目前爲止對我來說很好。在按F6之前我非常高興,並且因爲存儲庫接口中的查詢而出現錯誤。
警告1種類型參數「T」具有相同的名稱從外型「IRepository」 IRepository.cs 13 32 VideoK2.Repository
通過有關於這個話題的一些問題的方式,類型參數。但我無法理解他們。無法弄清楚我的話題。所以,很抱歉再次提問。
從根本上講,「子」的一個定義了一個黑影從超泛型類型的名稱。從本質上講,它增加了含糊不清的名字'T'。 –
這是C#嗎?如果是這樣,請將該標籤添加到您的問題中。 –