在解决方案中获取类库项目中的连接字符串

时间:2013-09-08 09:04:15

标签: c# asp.net design-patterns connection-string configuration-files

在我的.net 4解决方案中,我有两个不同的项目 - 一个Web应用程序项目和一个类库项目。

在Web应用程序项目中,数据库连接字符串位于web.config文件中。我想从类库项目访问该连接字符串。可能吗?如果有,怎么样?

如果有更好的方法来获取连接字符串,请告诉我。

2 个答案:

答案 0 :(得分:5)

要从您的类库中访问它,请添加对System.Configuration的引用,然后使用System.Confinguration.ConfigurationManager.ConnectionStrings

从类库中读取它并不理想。毕竟,你能说你的类库总是会被带有配置文件的东西所消耗吗?当然,如果你与其他开发者分享,特别是与不同平台的开发者分享。

考虑:

  1. IoC - 使用依赖注入来提供包含配置设置的依赖项。这些将由消费库(Web应用程序)填充。
  2. 在使用依赖于它们的元素时,将设置传递给类库。
  3. e.g:

    public class MyLibraryContainer
    {
        private string _connectionString;
    
        public MyLibraryContainer(string connectionString)
        {
            _connectionString = connectionString;
        }
    }
    

答案 1 :(得分:2)

在Web应用程序项目中,使用静态方法创建一个静态类,您可以在其中返回连接字符串,将引用放在类库项目中并调用您创建的方法。