项目要求一个已经存在的配置设置
本文关键字:存在 设置 配置 一个 项目 | 更新日期: 2023-09-27 18:09:47
下面是我调用的代码:
try
{
using (var client = new WCFServiceChannelFactory<IFxCurveService>())
{
guid = client.Call(svc => svc.ReserveSnapshot(fxCurveKey));
DiscountFactorNew[] dfs = client.Call(svc => svc.GetDiscountFactors(guid, dates, from));
return (double)dfs[0].Value;
}
}
catch
{
throw new Exception();
}
现在它不能实例化WCFServiceFactory
,因为它找不到我们需要的。config键之一,然而,它在app.config中。
<appSettings>
<add key="ConfigurationServiceAddress" value="http://ksintapp:91/configurationservice.svc/mex" />
</appSettings>
这个文件和调用它的文件在同一个目录中。它们是项目中仅有的两个文件,而项目是解决方案中唯一的项目。
错误:
由于应用程序,初始化配置存储库失败无法找到带有关键字"ConfigurationServiceAddress"的设置在本地配置文件中。
任何想法?
如果这是一个可执行的应用程序(Console, WinForms, WPF),请确保配置文件名为AppName.exe.config
,并位于与AppName.exe
相同的目录中,其中AppName
是项目名称。如果它是一个web应用程序,请确保此设置存在于web.config
.
当你在Visual Studio中添加一个App.config
文件到一个可执行类型的项目时,每次你构建它时,它通过将其重命名为AppName.exe.config
来复制到输出目录(bin/Debug或bin/Release),以便在运行时应用程序能够解析它。
通过更改服务创建来解决这个问题:
using (var client = new WCFServiceChannelFactory<IFxCurveService>(new Uri("http://ksqcoreapp64int:5025/")))
但现在我有不同的问题,但至少我得到了不需要配置文件。
配置文件必须由承载代码的应用程序加载。在你的评论中,你说这是一个由excel加载的程序集。你将无法创建一个有任何意义的excel.exe.config文件。
因此,您需要显式地说明要加载哪些配置文件或更改为使用注册表。在安装程序中定义该键时,我可能会使用后者。