在Asp.Net Core解决方案发布转换app.config文件?

时间:2017-04-12 10:58:24

标签: c# asp.net-core asp.net-core-mvc asp.net-core-webapi

我有一个使用.NET Framework 4.6.1的ASP.NET Core WebApi项目。我还有一个app.config文件,其中包含一些WCF服务的端点。我为Dev和Qa等每个环境都有相应的app.config。但是当我发布解决方案时,它不会根据环境转换app.config。你有什么想法我能做到吗?

1 个答案:

答案 0 :(得分:0)

我提出的解决方案是添加一个post build命令,将命令转换后的Web配置复制到MyProject.exe.config的顶部。为此,您需要将程序集重定向从app.config(输出)复制到web.config。那你只需要一个配置文件。这不是一个很好的解决方案,我将实现一种不同的方式来引用使用appSettings.json的wcf连接并在C#代码中创建客户端,但是,这将适用于此。在我们的持续集成构建中,我有一个powershell命令,在构建之后执行相同的操作。另一个警告:我正在部署到IIS并需要web.config身份验证设置(对于Windows身份验证),所以我必须确保已部署web.config和MyProject.exe.config。这最终成为同一个文件,IIS使用它需要的peices,WCF客户端构建器使用它需要的部分。再次,我们不会长期使用它,我建议以编程方式构建WCF客户端。

更新:我使用appsettings.json包含基于环境的设置,并添加了一种使用.netStandard中的system.servicemodel类连接到wcf的方法。它很棒!