1

我正在创建一个 Web 应用程序,它调用一个 DLL 来运行单元测试,我还有另一个 DLL(DataAccessLayer),它执行连接并执行对引用主 DLL 的 SQL 的查询。两个 DLL 使用相同的配置文件来读取设置。

从 VS 运行应用程序时,应用程序运行良好。但是,当 Web 应用程序部署到 IIS 时,DLL 似乎无法从配置文件中读取设置。

经过一番研究,我发现我可能必须在 web.config 文件中明确定义配置元素,但是我不知道如何实现这一点。有人可以指出我正确的方向吗?

我实际上是使用带有以下代码的 ConfigurationManager 检索设置:-

   public string GetValue(string key)
   {
       var appConfig = ConfigurationManager.OpenExeConfiguration("path to dll");
       strKeyValue = appConfig.AppSettings.Settings[key].Value;



       return strKeyValue;
   }

谢谢。

4

4 回答 4

6

用于WebConfigurationManager.AppSettings["HelloWorldKey"];从 web.config 读取 AppSettings。

于 2013-01-09T12:45:40.427 回答
0

使用以下代码访问连接字符串

string filePath= WebConfigurationManager.AppSettings["Pathfile"].ToString();

网络配置文件

<configuration>
       ....
     <appSettings>
       <add key="Pathfile" value="Path to dll"/>
     </appSettings>
    ....
</configuration>
于 2013-01-09T13:14:42.580 回答
0

只需在部署应用程序之前直接在 web.config 中设置您提到的 DLL 使用的所有 appSettings 值。您不需要在运行时修改它(无论如何也不应该,因为对 web.config 的任何修改都会导致应用程序重新启动)

于 2013-01-09T13:10:07.410 回答
0

connectionstring将 app.config 中使用的或AppSetting或添加ApplicationSettings到 web.config 中,我知道这是一项手动任务,但这是配置读取设置的唯一方式。

于 2013-01-09T13:20:14.233 回答