C# 当需要传多个参数时,处理方法
如下图,用户可能输入很多条件

在后端的处理方式:
使用键值对
private Dictionary<string, string> CreatSearchPara() { Dictionary<string, string> SearchPara = new Dictionary<string, string>(); if (!string.IsNullOrEmpty(txtMaterial.Text.Trim())) SearchPara["Material"] = txtMaterial.Text.Trim(); if (!string.IsNullOrEmpty(txtPurchaseOrder.Text.Trim())) SearchPara["PurchaseOrder"] = txtPurchaseOrder.Text.Trim(); if (!string.IsNullOrEmpty(txtPurchaser.Text.Trim())) SearchPara["Purchaser"] = txtPurchaser.Text.Trim(); }
   Dictionary<string, string> SearchPara = CreatSearchPara();
   dtReInpect = InspectReport.LoadIQCList(SearchPara);
//使用方法
public static DataTable LoadIQCList(Dictionary<string, string> SearchPara)
        {
              if (!(SearchPara != null && SearchPara.Count > 0)) return null;
              string strSlectWhere = string.Empty;
              string strWhere = string.Empty;
   
              StringBuilder Sql_Where = new StringBuilder();
              if (SearchPara.ContainsKey("Material"))
              {
                 Sql_Where.Append("  and ( PN like '%" + SearchPara["Material"] + "%' or PN_DESC like '%" + SearchPara["Material"] + "%') ");
              }
              if (SearchPara.ContainsKey("PurchaseOrder"))
			  {
                 Sql_Where.Append("  and  PO like '%" + SearchPara["PurchaseOrder"] + "%'");
              }
		}
 
 
                    
                     
                    
                 
                    
                 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号 
