个人总结:
.dll文件实际是.cs文件方法的封装【封装起来别人就看不到了,但是可以通过Reflector软件打开,看代码】
步骤:
1.新建DbHelp.cs文件
//数据库链接字符串 添加程序集【System.Configuration】+添加命名控件【using System.Configuration】
private static readonly string connectionString = ConfigurationManager.ConnectionStrings["SqlConn"].ConnectionString.ToString();
private static readonly string providerName = "System.Data.SqlClient";
#region GetConnection 用于获取连接数据库的 connection 对象
/// <summary>
/// GetConnection 用于获取连接数据库的 connection 对象
/// </summary>
/// <returns></returns>
/// //添加命名控件using System.Data.Common;
private static DbConnection GetConnection()
{
DbProviderFactory _factory = DbProviderFactories.GetFactory(providerName);
DbConnection connection = _factory.CreateConnection();
connection.ConnectionString = connectionString;
return connection;
}
#endregion
#region GetCommand 获取命令参数 command 对象
/// <summary>
/// GetCommand 获取命令参数 command 对象
/// </summary>
/// <param name="commandText"></param>
/// <param name="commandType"></param>
/// <param name="connection"></param>
/// <returns></returns>
private static DbCommand GetCommand(string commandText, CommandType commandType, DbConnection connection)
{
DbCommand command = connection.CreateCommand();
command.CommandType = commandType;
command.CommandText = commandText;
return command;
}
#endregion
#region GetCommand方法重载
/// <summary>
/// GetCommand方法重载
/// </summary>
/// <param name="commadText">sal语句</param>
/// <param name="connection">数据库链接</param>
/// <returns></returns>
private static DbCommand GetCommand(string commadText, DbConnection connection)
{
DbCommand command = connection.CreateCommand();
command.CommandText = commadText;
command.CommandType = CommandType.Text;
return command;
}
#endregion
#region GetParameter 用于为命令设置参数
/// <summary>
/// GetParameter 用于为命令设置参数
/// </summary>
/// <param name="paramName"></param>
/// <param name="paramValue"></param>
/// <param name="command"></param>
/// <returns></returns>
private static DbParameter GetParameter(string paramName, object paramValue, DbCommand command)
{
DbParameter parameter = command.CreateParameter();
parameter.ParameterName = paramName;
parameter.Value = paramValue;
return parameter;
}
#endregion
#region ExecuteNonQueryProc执行无参的存储过程
/// <summary>
/// 执行无参的存储过程
/// </summary>
/// <param name="sqlCommand">存储过程名</param>
/// <returns></returns>
public static int ExecuteNonQueryProc(string sqlCommand)
{
int result = 0;
using (DbConnection connection = GetConnection())
{
DbCommand command = GetCommand(sqlCommand, CommandType.StoredProcedure, connection);
connection.Open();
result = command.ExecuteNonQuery();
command.Parameters.Clear();
}
return result;
}
#endregion
以上只给出了部分方法的代码。
2.再用VS把cs文件封装成dll文件 方法参照:http://blog.csdn.net/qq_33903684/article/details/54583323
3.把DbHelp.cs文件删除,把生成的DbHelp.dll文件拷贝到DAL-->Bin-->Debug里面,在项目DAL层添加应用,找到DbHelp.dll文件,在DAL层就可以直接使用了,例如:
public static int Gsdf()
{
string sql = "insert into Flower(name) values(@name)";
Dictionary<string, object> dic = new Dictionary<string, object>();
dic.Add("@name","玫瑰");
return DbHelp.ExecuteNonQuery(sql,dic);
}