我正在尝试在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
答案 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"];
这两个配置文件都很常见。