3 回答

TA貢獻1812條經驗 獲得超5個贊
由于null
沒有類型,它無法確定類型TSearchFilter
是什么。您可以通過指定類型來調用該方法,例如query.GetGridResult<string, object>(queryFilter)
,這樣即使您可能不使用該對象null
,它在您的上下文中仍然有效。
老實說,我會保留 2 種單獨的方法,并讓一種方法調用另一種更詳細的方法。

TA貢獻1811條經驗 獲得超6個贊
因為您正在嘗試使用QueryFilter<TSearchFilter> queryFilter
具有非泛型 class 值的泛型參數調用方法QueryFilter
,這與泛型無關。
編輯:如果您希望使用單一方法,則QueryFilter
必須從QueryFilter<TSearchFilter>
.

TA貢獻1993條經驗 獲得超6個贊
我在@MariePichova's answer的幫助下找到了答案。我改變了我的 QueryFilter 類,如下所示。然后一切正常。
public class QueryFilter<TSearchFilter> where TSearchFilter : class
{
public QueryFilter()
{
SearchFilter = (TSearchFilter)Activator.CreateInstance(typeof(TSearchFilter));
}
public string SortBy { get; set; }
public bool IsSortAscending { get; set; }
public int PageFirstIndex { get; set; }
public byte PageSize { get; set; }
public TSearchFilter SearchFilter { get; set; }
}
public class QueryFilter : QueryFilter<EmptySearchFilter>
{ }
public class EmptySearchFilter
{ }
- 3 回答
- 0 關注
- 251 瀏覽
添加回答
舉報