我有一个使用 Entity Framework 的 Web 表单应用程序,该应用程序部署在一个开发箱、我的本地机器和一个生产箱上。其中每一个都有不同的连接字符串。 处理此问题的最佳方法是什么。
我使用 TFS Build Server 部署到开发环境,然后将构建结果压缩并手动复制到生产环境。
如果有帮助,我也会使用 Web 部署项目
我之前做的是当 ORM 启动时它会根据根文件夹的名称选择一个连接字符串。使用 Entity Framework,我不知道如何在不在每个页面上设置它的情况下执行此操作。
最佳答案
我们有一些类似的东西,我创建了一个类来包装 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
关于entity-framework - 基于上下文的 Entity Framework 的不同连接字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1453701/