使用VS2008自带LINQ TO SQL生成的ORM默认连接字符串内置在类中,一旦数据库连接改动需要重新编译ORM。
其实可以通过一个简单的方法实现动态读取。
一、因为要读取WEB配置文件,所以第一步要做的是在ORM类库中引用两个命名空间:
1、System.Web
2、System.Configuration
二、在ORM中新建一个类,命名为:SQLHelper.cs。这个类的功能就是读取配置字符
内容如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web.Configuration;
namespace PMS.DAL
{
class SQLHelper
{
/// <summary>
/// 从web.config中读取连接字符串
/// </summary>
/// <returns></returns>
public static string getConnStr()
{
return WebConfigurationManager.ConnectionStrings["PMSConnectionString"].ToString();
}
}
}
然后将DB.sesigner.cs中的字符串:public DBDataContext() :base(global::PMS.DAL.Properties.Settings.Default.PMSConnectionString, mappingSource)替换为:public DBDataContext() :base(global::PMS.DAL.SQLHelper.getConnStr(), mappingSource)
三、在WEB项目中引用该ORM类库即可使用。