0

我在VS2010上有一个VB.NET解决方案文件,格式如下

Code.Business (Business layer) .vb classes.
Code.Data (Data layer) LINQ to SQL .dbml files. 
Code.Web (UI layer) - ASPX pages.

我的datacontext数据层中有一个并且有一个更改的默认构造函数

Public Sub New()
MyBase.New(ConfigurationManager.ConnectionStrings("MyConStr").ConnectionString, mappingSource)
OnCreated()

End Sub

现在datacontext通过业务层 vb 类从所有网页中使用它。

我正在尝试切换到正确的数据库(Dev/Test/Prod)。我想使用上面的构造函数并为("MyConStr")传递正确的值,以便它可以指向正确的数据库。

我的文件中有所有三个值(Dev/Test/Prod)web.config

Global.asax - Application_Start event我正在从web.config应用程序变量中读取值。

 Dim strDBCon As String = ConfigurationManager.AppSettings(strServer & "_connstr")
 Application("ConString") = strDBCon

我尝试了Application( "Constring")并且该值似乎没有被保留,并且我无法在我的默认构造函数上切换该值datacontext

有没有人对这种情况有更好的解决方案?

4

1 回答 1

0

我认为您可以添加partial class数据上下文。请参阅Handling Multiple Result Shapes from SPROCs此链接:

LINQ to SQL(第 6 部分 - 使用存储过程检索数据)

我认为您可以使用partial class编写自己的构造函数

于 2013-01-11T20:38:45.173 回答