基于Context的实体框架的不同连接字符串

2 deployment entity-framework connection-string webforms

我有一个使用实体框架的Web表单应用程序,该应用程序部署在开发盒,我的本地机器和生产盒上.每个都有不同的连接字符串.处理这个问题的最佳方法是什么.

我使用TFS Build Server部署到开发中,并将该构建的结果压缩并将其手动复制到生产中.

如果有帮助,我也使用Web部署项目

我以前做的是当ORM启动时它会根据根文件夹的名称选择一个连接字符串.使用Entity Framework我不知道如何在不必在每个页面上设置它的情况下执行此操作.

Pad*_*ddy 5

我们有类似的东西,我创建了一个包装EntityContext对象的类,它适当地设置连接字符串 - 根据你设置连接字符串的方式,你需要类似的东西:

Public Class MyEntityModel

    Private _dataContext As Entities

    Public Sub New()

        Dim entityBuilder As New EntityConnectionStringBuilder()

        entityBuilder.ProviderConnectionString = MyApplicationConnectionString

        entityBuilder.Metadata = "res://*/"

        entityBuilder.Provider = "System.Data.SqlClient"

        _dataContext = New Entities(entityBuilder.ConnectionString)

    End Sub

    Public Function DataContext() As Entities
        Return _dataContext
    End Function

End Class
Run Code Online (Sandbox Code Playgroud)