using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Text;
using System.Security.Cryptography;//MD5加密需引入的命名空間
using System.Data.SqlClient;//資料庫操作需引入的命名空間
/// <summary>
/// DB 的摘要說明
/// </summary>
public class DB
{
public DB()
{
//
// TODO: 在此處添加建構式邏輯
//
}
/// <summary>
/// 連接資料庫
/// </summary>
/// <returns>回傳SqlConnection物件</returns>
public SqlConnection GetCon()
{
return new SqlConnection(ConfigurationManager.AppSettings["ConnectionString"].ToString());
}
/// <summary>
/// 執行SQL陳述句
/// </summary>
///<param name="cmdstr">SQL陳述句</param>
/// <returns>回傳值為int型:成功返1,失敗回傳0</returns>
public int sqlEx(string cmdstr)
{
SqlConnection con = GetCon();//連接資料庫
con.Open();//打開連接
SqlCommand cmd = new SqlCommand(cmdstr, con);
try
{
cmd.ExecuteNonQuery();//執行SQL 陳述句并回傳受影響的行數
return 1;//成功回傳1
}
catch (Exception e)
{
return 0;//失敗回傳0
}
finally
{
con.Dispose();//釋放連接物件資源
}
}
/// <summary>
/// 執行SQL查詢陳述句
/// </summary>
/// <param name="cmdstr">查詢陳述句</param>
/// <returns>回傳DataTable資料表</returns>
public DataTable reDt(string cmdstr)
{
SqlConnection con =GetCon();
SqlDataAdapter da = new SqlDataAdapter(cmdstr, con);
DataSet ds = new DataSet();
da.Fill(ds);
return (ds.Tables[0]);
}
/// <summary>
/// 執行SQL查詢陳述句
/// </summary>
/// <param name="str">查詢陳述句</param>
/// <returns>回傳SqlDataReader物件dr</returns>
public SqlDataReader reDr(string str)
{
SqlConnection conn = GetCon();//連接資料庫
conn.Open();//并打開了連接
SqlCommand com = new SqlCommand(str, conn);
SqlDataReader dr = com.ExecuteReader(CommandBehavior.CloseConnection);
return dr;//回傳SqlDataReader物件dr
}
/// <summary>
/// MD5加密
/// </summary>
/// <param name="strPwd">被加密的字串</param>
/// <returns>回傳加密后的字串</returns>
public string GetMD5(string strPwd)
{
string pwd = "";
//實體化一個md5物件
MD5 md5 = MD5.Create();
// 加密后是一個位元組型別的陣列,這里要注意編碼UTF8/Unicode等的選擇
byte[] s = md5.ComputeHash(Encoding.UTF8.GetBytes(strPwd));
//翻轉生成的MD5碼
s.Reverse();
//通過使用回圈,將位元組型別的陣列轉換為字串,此字串是常規字符格式化所得
//只取MD5碼的一部分,這樣惡意訪問者無法知道取的是哪幾位
for (int i = 3; i < s.Length - 1; i++)
{
//將得到的字串使用十六進制型別格式,格式后的字符是小寫的字母,如果使用大寫(X)則格式后的字符是大寫字符
//進一步對生成的MD5碼做一些改造
pwd = pwd + (s[i] < 198 ? s[i] + 28 : s[i]).ToString("X");
}
return pwd;
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/195854.html
標籤:.NET技术
上一篇:C#中呼叫python
