我需要能够在用户选择它时动态地切换连接字符串(在登录期间通过单选按钮)。 我确实有连接字符串,这不是问题。由于上面的原因,它无法进入app.config。如何在窗体中识别强类型tableAdapter
这就是说,我认为如果我可以在表单中找到强类型的表格适配器,我可以通过编程方式切换连接字符串。但我找不到它。
我看了这篇文章,并没有让我觉得有用。 C# Reflection. Set TableAdapter ConnectionString
任何想法,这将是?它不是控件集合,它不在Me.GetType()。GetMethods()中,不在Me.GetType()。GetProperties中。
为每个请求添加了一些代码,不知道这是多么有帮助。这是在登录时设置的。
If frmPreferences.InProd Then
GConnectString = "DATA SOURCE=xxx;PASSWORD=" & Password & ";USER ID=" & userName & ";"
Else
GConnectString = "DATA SOURCE=xxx;PASSWORD=" & Password & ";USER ID=" & userName & ";"
End If
下面是一些其他代码,它允许我在运行时设置配置字符串,但它是为每个tableadapter。
Me.INSTITUTIONSTableAdapter.Connection.ConnectionString = GConnectString
Me.INVOICESTableAdapter.Connection.ConnectionString = GConnectString
欢迎任何建议。意图是不重构100多个数据集和500个表单。如果我需要对每个数据集进行一些细微的更改,但是将所有数据集进行垃圾处理并按照某人的建议以编程方式执行所有操作(这可能需要几年的时间)并不可行。
使用连接类... – Codexer
您可以共享在连接之间切换的代码吗? –
最近有人问到与此非常相似的东西,但令人沮丧的是我无法找到它。但是,最好在代码中创建数据集和表适配器,理想情况是在数据访问层中创建数据集和表适配器,而不是依赖于设计人员将其添加到表单中。这样你就可以很容易地改变tableadapter上的连接了。 – peterG