一:概述(所有遇到的数据库的相关操作都是用存储过程)
(1)采用处理流程::::基类DBClass,根据传递的存储过程名称,和参数调用存储过程,,, Fac***类根据页面需要进行逻辑处理,并在数据库中加入所需存储过程,然后调用DBClass,执行存错过程,,,,,,各个页面对应CS中调用Fac**类进行数据的操作......页面不能跨过Fac直接调用DBClass
实施过程:DBClass写好后不在变动,前台人员--创建页面,调用Fac**方法;后台人员--根据业务需求,编写存储过程,并为前台编写Fac**方法
(2)与数据库的连接字符串(包含数据库地址,数据库名称,登陆用户名及密码信息) ..放到web.config配置文件中..系统启动时根据权限需求,调用不同的链接字符串..这样可以在数据库中为不同登陆用户设置不同权限,也方便统一管理连接字符串.
实现方法:在web.config中添加类似<appSettings><add key="SqlConnection" value="server=192.168.1.27;database=InfoOnline;uid=admin;pwd=111111;" /></appSettings>的键值对,程序中根据key值取得value值.
程序中:先导入名称空间 ,System.Configuration;在用ConfigurationSettings.AppSettings[key];
using System.Configuration;
public SqlConnection GetConnection(string key)
{
//Zeda .Common .Encrypt .EncryptString enstr=new EncryptString ();
if (ConfigurationSettings.AppSettings[key] != null)
{
string text1 = ConfigurationSettings.AppSettings[key];
this._connection = new SqlConnection(text1.Trim());
return this._connection;
}
throw new Exception("config文件不存在");
}
public SqlConnection GetConnection(string key)
{
//Zeda .Common .Encrypt .EncryptString enstr=new EncryptString ();
if (ConfigurationSettings.AppSettings[key] != null)
{
string text1 = ConfigurationSettings.AppSettings[key];
this._connection = new SqlConnection(text1.Trim());
return this._connection;
}
throw new Exception("config文件不存在");
}