{
return "user id=sa;password=sa;server=.;initial catalog=数据库名称";
}
}
}
直接打开 DLL文件 看到的是乱码,要比写在web.config有安全感。当然了通过反编译软件还是可以看到里面的代码。
还有就是修改起来不太方便,需要重新编译一下这个类。
5.综合
以上个四种方法各有优越缺点,用哪一个都不是最好的,另外还有一个问题没有提及 —— 加密连接字符串。
那么在一个项目里,怎么做才是最好的方法呢? —— 分层。
项目 <——类(DLL文件) <——存放连接字符串的位置
A.对于项目来说呢只需要知道:当我要用连接字符串的时候我到DLL里面(调用函数)读取就行了,至于连接字符串具体的存放位置、是否加密等都不必关心。
B.类(DLL文件),这个就很重要和灵活了。对于一般的项目可以这么写
using System;
namespace JYK
{
/**//// <summary>
/// 取得连接字符串。
/// </summary>
public class Connection
{
public static string ConnectionString()
{
return System.Configuration.ConfigurationSettings.AppSettings["ConnString"];
}
}
}
注意:上一个DLL是把连接字符串直接写在了类里面,而这回是到web.config里面读取。
也许你会问:既然是到web.config里面读取连接字符串,那为什么还要加上一个DLL呢,是不是多此一举呀?
这么做是为了达到这个目的:无论连接字符串如何变化,都不需要修改项目!
如果是直接读取web.config,那么如果web.config里面放的是加密的连接字符串,那怎么处理?是不是要修改项目,或者是数据层。不要认为修改数据层就不是修改项目了。
如果加上了一个DLL的话,那么只需要重新编译一下这个DLL就行了。项目可以保持不变。
C.连接字符串的存
| 对此文章发表了评论 |

