项目需要,需要一个通用的数据库操作类,增删改查.事务.存储过程.日志记录都要有,于是在已有的帮助类上做了一些改进,并将log4j的.NET版--log4net嵌入其中记录sql的执行环境和状态. 用起来还是比较顺手的,因此分享一下供参考.其中log4net需要通过VS的NuGet程序包管理器引入然后引用. 1. LogHelper: using log4net; using log4net.Layout; using System.Collections.Generic; namespace C…
using System; using System.Collections.Generic; using System.Text; using System.Configuration; using System.Data; using System.Data.SqlClient; using System.Reflection; /// <summary> /// 数据库助手 /// @浅时光 /// #zuxuguang@163.com /// </summary> name…
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Data; using System.Data.SqlClient; namespace Test { public class DBHelper { public static string ConStrin…
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data; using System.Data.SqlClient; namespace CommDAL { public class SqlHelper { private string sqlConnString; // 数据库连接字符串 …
实体类.数据访问类 是由封装演变而来,使对数据的访问更便捷,使用时只需要调用即可,无需再次编写代码 实体类是按照数据库表的结构封装起来的一个类 首先,新建文件夹 App_Code ,用于存放数据库类等类文件,新建类,例如: Users(与数据库访问的表同名)和 UsersData 在类UsersData里写数据库访问方法 using System; using System.Collections.Generic; using System.Linq; using System.Text; us…
程序分三层:界面层.业务逻辑层.数据访问层 比较规范的写程序方法,要把业务逻辑层和数据访问层分开,此时需要创建实体类和数据访问类 实体类: 例 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace 增删改查.app_ado { public class users { private int _Ids…
如果不规避,在黑窗口里面输入内容时利用拼接语句可以对数据进行攻击 如:输入Code值 p001' union select * from Info where '1'='1 //这样可以查询到所有数据 SQL数据库字符串注入攻击:需要使用cmd.Parameters这个集合占位符: @key 代表这个位置用这个占位符占住了 Parameters这个集合中将此占位符所代表的数据补全 cmd.Parameters.Clear(); --添加占位符数据之前,要清空此集合cmd.Parameters.A…
第二版的数据库访问类出炉了: C# Code 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 public class OledbDataService1:IDisposable { public OledbDataService1(string …
最近在做一个基于asp.net和sqlserver的网站项目,发现网站运行一段时间之后,会报异常: 超时时间已到,但是尚未从池中获取连接.出现这种情况可能是因为所有池连接均在使用,并且达到了最大池大小 这异常明显是sqlserver数据库连接池超出了默认大小,估计是代码哪里忘了释放DB链接了. 排查数据访问层代码跟DBHelper,搞了半天解决了. 总结一点东西,记录一下. DBHelperA代码: public class DBHelperA { public string connStr =…