校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁(yè) > 知識(shí)庫(kù) > asp.net SqlParameter如何根據(jù)條件有選擇的添加參數(shù)

asp.net SqlParameter如何根據(jù)條件有選擇的添加參數(shù)

熱門(mén)標(biāo)簽:柳州電銷(xiāo)機(jī)器人公司 電銷(xiāo)語(yǔ)音機(jī)器人型號(hào)參數(shù) 百度地圖怎樣做地圖標(biāo)注 太原400電話上門(mén)辦理 昆明語(yǔ)音電銷(xiāo)機(jī)器人價(jià)格 征途美甲店地圖標(biāo)注 400電話如何申請(qǐng)取消 騰訊地圖標(biāo)注手機(jī) 浦發(fā)電話機(jī)器人提醒還款
SqlParameter帶參數(shù)的增刪改查語(yǔ)句,可以防止注入.有時(shí)候?qū)憇ql語(yǔ)句的時(shí)候會(huì)根據(jù)方法傳進(jìn)來(lái)的參數(shù)來(lái)判斷sql語(yǔ)句中where條件的參數(shù).

一般方法

DAL層方法
復(fù)制代碼 代碼如下:

public UserInfo GetAll(UserInfo a)
{
string strSql = "select id,name,code,password from [tb].[dbo].[User] where 1=1";
strSql += " and [id]=@id";
strSql += " and [name]=@name";
strSql += " and [code]=@code";
strSql += " and [password]=@password";
SqlParameter[] parameters = {
new SqlParameter("@id", a.id)
new SqlParameter("@name", a.name)
new SqlParameter("@code", a.code),
new SqlParameter("@password", a.password)
};
SqlDataReader reader = SqlHelper.ExecuteReader(strSql, parameters);
UserInfo hc = new UserInfo();
while(reader.Read())
{
hc.id = reader.GetInt32(reader.GetOrdinal("id"));
hc.name = reader.GetString(reader.GetOrdinal("name"));
hc.code = reader.GetString(reader.GetOrdinal("code"));
hc.password = reader.GetString(reader.GetOrdinal("password"));
}
reader.Close();
return hc;
}

現(xiàn)在想根據(jù)集合UserInfo內(nèi)屬性來(lái)添加SqlParameter參數(shù)

方法如下

DAL層方法
復(fù)制代碼 代碼如下:

public UserInfo GetALL(UserInfo a)
{
string strSql = "select id,name,code,password from [tb].[dbo].[User] where 1=1";
if (a.id>0) strSql += " and [id]=@id";
if (!string.IsNullOrEmpty(a.name)) strSql += " and [name]=@name";
if (!string.IsNullOrEmpty(a.code)) strSql += " and [code]=@code";
if (!string.IsNullOrEmpty(a.password)) strSql += " and [password]=@password";
ListSqlParameter> parametertemp = new ListSqlParameter>();
if (a.id > 0) parametertemp.Add(new SqlParameter("@id", a.id));
if (!string.IsNullOrEmpty(a.name)) parametertemp.Add(new SqlParameter("@name", a.name));
if (!string.IsNullOrEmpty(a.code)) parametertemp.Add(new SqlParameter("@code", a.code));
if (!string.IsNullOrEmpty(a.password)) parametertemp.Add(new SqlParameter("@password", a.password));
SqlParameter[] parameters = parametertemp.ToArray();//ToArray()方法將 ListT> 的元素復(fù)制到新數(shù)組中。

SqlDataReader reader = SqlHelper.ExecuteReader(strSql, parameters);
UserInfo hc = new UserInfo();
while (reader.Read())
{
hc.id = reader.GetInt32(reader.GetOrdinal("id"));
hc.name = reader.GetString(reader.GetOrdinal("name"));
hc.code = reader.GetString(reader.GetOrdinal("code"));
hc.password = reader.GetString(reader.GetOrdinal("password"));
}
reader.Close();
return hc;
}

DBUtility層SqlHelper
復(fù)制代碼 代碼如下:

public SqlDataReader ExecuteReader(string query, params SqlParameter[] parameters)
{
SqlConnString = GetConnect2();
SqlConnString.Open();
SqlCommand SqlCmd = new SqlCommand();
SqlCmd.Connection = SqlConnString;
SqlCmd.CommandText = query;
//SqlCmd.Parameters.AddRange(parameters);//AddRange()不能傳空參數(shù)組
//params 的意思就是允許傳空參數(shù)組
foreach (SqlParameter item in parameters)
{
SqlCmd.Parameters.Add(item);
}
SqlDataReader dr;
try
{
dr = SqlCmd.ExecuteReader(CommandBehavior.CloseConnection);
return dr;
}
catch (Exception ee)
{
SqlConnString.Close();
throw ee;
}
}
您可能感興趣的文章:
  • asp頁(yè)面和Asp.net頁(yè)面?zhèn)髦形膮?shù)UrlEncode編碼以及接收解碼
  • asp.net獲取當(dāng)前網(wǎng)址url的各種屬性(文件名、參數(shù)、域名 等)的代碼
  • asp.net利用Ajax和Jquery在前臺(tái)向后臺(tái)傳參數(shù)并返回值的實(shí)例
  • asp.net中mvc使用ajax提交參數(shù)的匹配問(wèn)題解決探討
  • asp.net 參數(shù)不同共用一個(gè)頁(yè)面的實(shí)現(xiàn)方法
  • asp.net中使用cookie傳遞參數(shù)的方法
  • 在ASP.NET 2.0中操作數(shù)據(jù)之一:創(chuàng)建一個(gè)數(shù)據(jù)訪問(wèn)層
  • 在ASP.NET 2.0中操作數(shù)據(jù)之二:創(chuàng)建一個(gè)業(yè)務(wù)邏輯層
  • 在ASP.NET 2.0中操作數(shù)據(jù)之三:創(chuàng)建母版頁(yè)和站點(diǎn)導(dǎo)航
  • 在ASP.NET 2.0中操作數(shù)據(jù)之四:使用ObjectDataSource展現(xiàn)數(shù)據(jù)
  • 在ASP.NET 2.0中操作數(shù)據(jù)之五:聲明參數(shù)

標(biāo)簽:陽(yáng)泉 張家界 新疆 德陽(yáng) 天門(mén) 白山 蘭州 江蘇

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《asp.net SqlParameter如何根據(jù)條件有選擇的添加參數(shù)》,本文關(guān)鍵詞  asp.net,SqlParameter,如何,根據(jù),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《asp.net SqlParameter如何根據(jù)條件有選擇的添加參數(shù)》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于asp.net SqlParameter如何根據(jù)條件有選擇的添加參數(shù)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 垣曲县| 怀宁县| 古丈县| 九龙城区| 临漳县| 英超| 怀仁县| 扎囊县| 南昌县| 贵州省| 买车| 平山县| 麟游县| 东海县| 元江| 天柱县| 玉溪市| 垦利县| 武陟县| 敖汉旗| 枞阳县| 黄石市| 尚志市| 辽中县| 台中市| 兴仁县| 监利县| 寿宁县| 克什克腾旗| 昆明市| 邹平县| 栾城县| 长沙市| 宁河县| 丹东市| 东乡族自治县| 区。| 叶城县| 富川| 环江| 巴林右旗|