我有一個屏幕,在數據庫員工表上進行基本搜索。搜索參數
public class EmployeeSearchParameter
{
public EmployeeSearchParameterType SearchParameterType { get; set; }
public string EmployeeSearchParameterValue { get; set; }
}
public enum EmployeeSearchParameterType
{
FirstName = 1,
LastName = 2,
EmpId= 3,
IsActive = 4
}
請問這個是靈活的情況下,如果我有:
截至目前我已經創建了一個SearchParameter類
用戶將姓,名,部門,IsActive等搜索更多支持自定義分頁的選項,比如開始行號,結束行號,排序方式等?
或者我可以創建一個抽象類搜索並執行?
public abstract class Search
{
public virtual Int PageSize=10;
public virtual string SortBy="DESC"
//..etc
}
public class EmployeeSearchParameter:Search
{//stuffs
}
或ISEARCH 接口
public class EmployeeSearchParameter:ISearch
{ }
爲更好的設計/簡單和不過架構問題的任何輸入?
像頁面大小和排序順序的參數最好由用戶決定,因此會成爲用戶界面的問題。搜索應該只提供一種執行搜索的方法,而不是真的被頁面大小值所關注。 – Ngm
如果您正在尋找靈活性來構建您的選擇查詢,請查看以下網址:http://www.codeproject.com/文章/ 13419/SelectQueryBuilder-Building-complex-and-flexible-S – Ngm