ASP.NET和VB.NET配置文件

时间:2012-07-13 18:30:33

标签: asp.net vb.net web-config app-config

我正在尝试在ASP.NET应用程序和VB.NET(Forms)应用程序之间共享DLL。客户端应用程序使用配置文件来存储设置,例如连接字符串以及ASP.NET应用程序。

ASP.NET应用程序使用System.Web.Configuration命名空间,而VB.NET应用程序使用System.Configuration命名空间。我注意到它们继承自Object类。我希望他们都从公共类继承,以便我可以使用Polymorphism在DLL中创建适当类型的实例。

对于在ASP.NET和VB.NET应用程序中共享的DLL使用配置文件的最佳做法是什么。我已经研究了这个,我在某个地方读过你应该在ASP.NET应用程序中使用System.Configuration而我在其他地方读到你不应该这样做,因为如果你在ASP中使用System.Configuration你就不能写入web.config .NET应用程序。我不需要写入web.config;我需要阅读它。什么是最佳做法?

更新13/07/2012 DLL包含一个类。该类目前有一个构造函数,如下所示:

private connectionString As Sub
Public Sub New()
connectionString = WebConfigurationManager.ConnectionStrings("TestConnection").ConnectionString
End Sub

我现在正在考虑在类中为无Web客户端调用创建另一个构造函数,即:

private connectionString As Sub
Public Sub New()
connectionString = connectionString2
End Sub

2 个答案:

答案 0 :(得分:3)

我建议从托管应用程序传递你的DLL函数的参数,并从dll中完全删除配置文件依赖项。

答案 1 :(得分:1)

在这种情况下,对我们来说效果很好的是我们使用条目:

<configuration>
  <appSettings>
    <add key="AccessServer" value="\\apollo\all_access_anon\northwind.mdb" />
    ...

然后我们使用以下方式访问它:

NameValueCollection appSettings = ConfigurationManager.AppSettings;
string str = appSettings["AccessServer"];

这两个配置文件都很常见。