像vb可以把一些常用的函数,比如连接数据库的函数,放入类模块中
想调用时,直接可调用,在C#中如何实现?谢谢!
想调用时,直接可调用,在C#中如何实现?谢谢!
解决方案 »
- 自动更新功能
- c#制做水晶報表或RDLC報表,每個報表都要至少要加一個dataset的嗎?
- 如何用C#实现VB.NET的MyBase.New()
- 急!求助:64位Vista注册32位service出错!!!
- 关于一个图片的效果
- C#(web)中当DataGrid有两个(或以上)相同的命令名时,如何处理
- 给点建议——用.NET和SQL Server做点什么有意思的
- ===============把键盘输入的字符在标题行显示出来的源代码===============
- Webform中TreeView的节点从XML中去数据的问题?
- C# dataGridView 增删改 实时更新数据库 请赐教!!!!
- c# 的form 中如何知道当前汉文输入法是否打开?
- 为什么无法继承我的Form类呢?
平方
Console.WriteLine(Math.Pow(2,3));
/// <summary>
/// 执行一个SQL Command(使用ConnectString)
/// </summary>
/// <param name="connString">ConnectString(Sql连接字符串)</param>
/// <param name="cmdType">Command类型</param>
/// <param name="cmdText">Command的语句(SQL语句)</param>
/// <param name="cmdParms">Command的参数(SqlParameter[]数组类型)</param>
/// <returns>Command的返回值(受影响的行数)</returns>
public static int ExecuteNonQuery(string connString, CommandType cmdType, string cmdText, params SqlParameter[] cmdParms)
{
SqlCommand cmd = new SqlCommand(); using (SqlConnection conn = new SqlConnection(connString))
{
PrepareCommand(cmd, conn, null, cmdType, cmdText, cmdParms);
int val = cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
return val;
}
} /// <summary>
/// 执行一个SQL Command(使用隐含的ConnectString)
/// </summary>
/// <param name="cmdType">Command类型</param>
/// <param name="cmdText">Command的语句(SQL语句)</param>
/// <param name="cmdParms">Command的参数(SqlParameter[]数组类型)</param>
/// <returns>Command的返回值(受影响的行数)</returns>
public static int ExecuteNonQuery(CommandType cmdType, string cmdText, params SqlParameter[] cmdParms)
{
SqlCommand cmd = new SqlCommand(); using (SqlConnection conn = new SqlConnection(CONN_STRING))
{
PrepareCommand(cmd, conn, null, cmdType, cmdText, cmdParms);
int val = cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
return val;
}
}// public static int ExecuteNonQuery(string cmdText)
// {
// }
/// <summary>
/// 执行一个简单的查询, 只需要输入SQL语句, 一般用于更新或者删除
/// </summary>
/// <param name="sqlText"></param>
/// <returns></returns>
public static int ExecuteNonQuery(string sqlText)
{
return ExecuteNonQuery(CommandType.Text,sqlText);
} /// <summary>
/// 执行一个SQL Command(使用SqlTransaction)
/// </summary>
/// <param name="trans">使用的SqlTransaction</param>
/// <param name="cmdType">Command类型</param>
/// <param name="cmdText">Command的语句(SQL语句)</param>
/// <param name="cmdParms">Command的参数(SqlParameter[]数组类型)</param>
/// <returns>Command的返回值(受影响的行数)</returns>
public static int ExecuteNonQuery(SqlTransaction trans, CommandType cmdType,string cmdText, params SqlParameter[] cmdParms)
{
SqlCommand cmd = new SqlCommand();
PrepareCommand(cmd, trans.Connection, trans, cmdType, cmdText, cmdParms);
int val = cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
return val;
}
/// <summary>
/// 根据指定DsCommandType类型,自动生成cmd执行dataset的更新
/// </summary>
/// <param name="connString">ConnectString(Sql连接字符串)</param>
/// <param name="cmdType">Command类型</param>
/// <param name="dsCommandType">Enum类型</param>
/// <param name="cmdText">Command的语句(SQL语句)</param>
/// <param name="dataset">dataset</param>
/// <param name="tablename">表名</param>
/// <param name="cmdParms">Command的参数(SqlParameter[]数组类型)</param>
/// <returns>是否更新成功</returns>
public static bool ExecuteNonQuery(string connString,CommandType cmdType,CommandEnum.DsCommandType dsCommandType,string cmdText,DataSet dataset,string tablename,params SqlParameter[] cmdParms)
{
SqlDataAdapter dsCommand = new SqlDataAdapter();
SqlCommand cmd = new SqlCommand();
using (SqlConnection conn = new SqlConnection(connString))
{
if (conn.State != ConnectionState.Open)
conn.Open(); cmd.Connection = conn;
cmd.CommandText = cmdText;
cmd.CommandType = cmdType;
if (cmdParms != null)
{
foreach (SqlParameter parm in cmdParms)
cmd.Parameters.Add(parm);
}
switch(dsCommandType)
{
case CommandEnum.DsCommandType.InsertCommand:
dsCommand.InsertCommand = cmd;
break;
case CommandEnum.DsCommandType.UpdateCommand:
dsCommand.UpdateCommand = cmd;
break;
case CommandEnum.DsCommandType.DeleteCommand:
dsCommand.DeleteCommand = cmd;
break;
default:break;
}
dsCommand.Update(dataset,tablename);
if ( dataset.HasErrors )
{
dataset.Tables[tablename].GetErrors()[0].ClearErrors();
return false;
}
else
{
dataset.AcceptChanges();
return true;
}
} }
/// <summary>
/// 更新一个记录集(使用connString)
/// </summary>
/// <param name="connString">ConnectString(Sql连接字符串)</param>
/// <param name="cmdInsertType">commandInsert类型</param>
/// <param name="cmdInsertText">SQL语句(Insert)</param>
/// <param name="cmdUpdateType">commandUpdate类型</param>
/// <param name="cmdUpdateText">SQL语句(Update)</param>
/// <param name="cmdInsertType">commandDelete类型</param>
/// <param name="cmdDeleteText">SQL语句(Delete)</param>
/// <param name="cmdInsertParms">InsertCommand参数</param>
/// <param name="cmdUpdateParms">UpdateCommand参数</param>
/// <param name="cmdDeleteParms">DeleteCommand参数</param>
/// <param name="dataset">dataset</param>
/// <param name="tablename">表名</param>
/// <returns>是否更新成功</returns>
public static bool UpdateDataset(string connString,CommandType cmdInsertType,string cmdInsertText,CommandType cmdUpdateType,string cmdUpdateText,CommandType cmdDeleteType,string cmdDeleteText,SqlParameter[] cmdInsertParms,SqlParameter[] cmdUpdateParms,SqlParameter[] cmdDeleteParms,DataSet dataset,string tablename)
{
SqlDataAdapter dsCommand = new SqlDataAdapter();
using (SqlConnection conn = new SqlConnection(connString))
{
if (conn.State != ConnectionState.Open)
conn.Open();
if(cmdInsertText != String.Empty)
{
SqlCommand cmdInsert = new SqlCommand();
cmdInsert.Connection = conn;
cmdInsert.CommandText = cmdInsertText;
cmdInsert.CommandType = cmdInsertType;
if (cmdInsertParms != null)
{
foreach (SqlParameter parm in cmdInsertParms)
cmdInsert.Parameters.Add(parm);
}
dsCommand.InsertCommand = cmdInsert;
}
if(cmdUpdateText != String.Empty)
{
SqlCommand cmdUpdate = new SqlCommand();
cmdUpdate.Connection = conn;
cmdUpdate.CommandText = cmdUpdateText;
cmdUpdate.CommandType = cmdUpdateType;
if (cmdUpdateParms != null)
{
foreach (SqlParameter parm in cmdUpdateParms)
cmdUpdate.Parameters.Add(parm);
}
dsCommand.UpdateCommand = cmdUpdate;
}
if(cmdDeleteText != String.Empty)
{
SqlCommand cmdDelete = new SqlCommand();
cmdDelete.Connection = conn;
cmdDelete.CommandText = cmdDeleteText;
cmdDelete.CommandType = cmdDeleteType;
if (cmdDeleteParms != null)
{
foreach (SqlParameter parm in cmdDeleteParms)
cmdDelete.Parameters.Add(parm);
}
dsCommand.DeleteCommand = cmdDelete;
}
if(cmdInsertText == String.Empty && cmdUpdateText == String.Empty && cmdDeleteText == String.Empty)
{
SqlCommandBuilder scb = new SqlCommandBuilder(dsCommand);
return false;
}
dsCommand.Update(dataset,tablename);
if ( dataset.HasErrors )
{
dataset.Tables[tablename].GetErrors()[0].ClearErrors();
return false;
}
else
{
dataset.AcceptChanges();
return true;
}
} }
#endregion
public static aaa()
可以直接调用,不过不能继承了