真的在类库中苦苦挣扎,如何在库中处理延迟加载/连接字符串?

时间:2011-05-04 10:45:52

标签: vb.net connection-string lazy-loading class-library

我真的很想弄清楚使用类库的想法,而我几乎只是维护具有重复类而不是共享类库的单独项目。

我创建了一个包含单个类库项目和两个Web应用程序的解决方案。我的主要问题是连接字符串。这些是在Web项目中保存/声明的,每次执行任何类型的数据访问时,我都必须将它们传递给类库。我有点理解为什么我应该这样做,所以我暂时还在用它。

现在这导致了一个延迟加载的问题/问题。我正在使用延迟加载以下属性:

    Public Property KeyRelationshipManager() As Employee
        Get
            If _keyRelationshipManager Is Nothing Then
                _keyRelationshipManager = Employee.GetEmployee(_keyRelationshipManagerStaffNumber)
                Return _keyRelationshipManager
            Else
                Return _keyRelationshipManager
            End If
        End Get
        Set(ByVal value As AECOM.Employee)
            _keyRelationshipManager = value
        End Set
    End Property

因为此属性正在使用函数:

Employee.GetEmployee

我需要将连接字符串传递给该函数。

这意味着我每次使用它时都需要将连接字符串传递给属性,这样我就可以将它传递给函数。

这是对的吗?它对我来说并不“合适”,因为我将不得不调整大量的函数和属性并通过连接字符串。

1 个答案:

答案 0 :(得分:0)

为什么要将连接字符串传递给类库?在类库中使用ConfigurationManager.ConnectionStrings["myClassLibraryConnection"]。只要您的主机应用程序的配置文件中都有该连接字符串,它应该没问题。这是web.config文件的作业,用于绑定不同类库的配置以形成单个应用程序。