用于数据访问层的SQL连接字符串

我正在使用直接连接字符串

string ConString = "Data source=.\\Sqlexpress; initial catalog=MyDB; integrated security=SSPI";

我需要一个存储在web.config文件中的连接字符串,如:

    

这个问题是我的数据访问层无法访问它。 我正在研究3层架构模型。 我不想添加对我的数据访问层的引用,例如System.Web等。每天我的类库都会获得越来越多的类。 我意识到是时候使用全局可访问的连接字符串,这样当我最终提交我的项目时,连接字符串将只需要在大学计算机上的一个地方进行更改。

您不必在数据访问层中添加对Web dll的引用。

这一切都取决于您的结构,但如果将dll复制到您的网站的bin文件夹中的项目引用 – Web配置连接字符串将直接从网站的Web配置中使用。 连接将在运行时在主机中解析,该主机将是由某个Web服务器托管的网站。 无需为数据访问dll本身添加一个。 这意味着对于单个流程架构 – 您的连接字符串已全局可用。

如果您的数据访问层托管在应用服务器上,那么您可能具有用于公开业务/数据层的Web服务的Web配置。 常见的模式是使用WCF服务公开您的业务层w / data访问。 然后,该服务将拥有自己的web.config文件 – 与Web站点定义的web.config分开。 但关键是只有WFC服务需要连接字符串。 网站的Web配置通常仅包含有关如何调用服务(WCF配置)的信息。