从Web项目访问类库中的app.config文件

时间:2015-09-29 15:06:13

标签: c# wcf app-config class-library

我在wcf类库中有一个类(myservice),它从类库中的app.config文件访问端点和appsettings。这个类(myservice)是从我的控制器(web项目)调用的。我发现它正在尝试读取web项目的web.config文件而不是app.config文件。我如何访问正确的文件?

除了没有得到任何值,我收到此错误

  不在独立的exe内部运行时必须指定

exePath

我在myservice中使用它 -

var appSettings = ConfigurationManager.AppSettings;

var configuration = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal);
var serviceModelSectionGroup = ServiceModelSectionGroup.GetSectionGroup(configuration);
var clientSection = serviceModelSectionGroup.Client;
var endpoint = clientSection.Endpoints;
return new EndpointAddress(endpoint[0].Address);

2 个答案:

答案 0 :(得分:1)

您不应在库中使用ConfigurationManager.OpenExeConfiguration。建议的方法是使用代码传递配置;如果由于某些原因您不想这样做,您可以使用创建配置部分的设置机制,而无需直接访问配置文件。

答案 1 :(得分:-1)

问题在于

 var configuration = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal);

这个可用的呼叫有一个超载

ConfigurationManager.OpenExeConfiguration(string exepath)