.NET Framework 4.6.1을 사용하는 ASP.NET Core WebApi 프로젝트가 있습니다. 또한 일부 WCF 서비스에 대한 끝점을 포함하는 app.config 파일이 있습니다. Dev 및 Qa 등과 같은 각 환경에 해당하는 app.config가 있습니다. 그러나 솔루션을 게시 할 때 환경을 기반으로 app.config가 변형되지 않습니다. 내가 그걸 어떻게 할 수 있는지에 대한 아이디어가 있니?Asp.Net 핵심 솔루션에서 변환 app.config 파일을 게시 하시겠습니까?
1
A
답변
0
제가 생각해 낸 해결책은 변환 된 웹 구성을 MyProject.exe.config 상단에 복사하는 게시 빌드 명령을 추가하는 것입니다. 이 작업을 수행하려면 app.config (출력)에서 web.config로 어셈블리 리디렉션을 복사해야합니다. 그런 다음 하나의 설정 파일 만 있으면됩니다. 이것은 훌륭한 해결책은 아니며 appSettings.json을 사용하여 wcf 연결을 참조하고 C# 코드로 클라이언트를 만드는 다른 방법을 구현하려고합니다. 그러나 이는 현재는 효과가 있습니다. 우리의 지속적인 통합 빌드에서는 빌드 한 후에도 동일한 작업을 수행하는 powershell 명령이 있습니다. 한 가지 다른 경고 : IIS에 배포 중이며 web.config 인증 설정 (Windows 인증의 경우)이 필요하므로 web.config와 MyProject.exe.config가 모두 배포되었는지 확인해야합니다. 결국 같은 파일, 필요한 Peices를 사용하는 IIS 및 필요한 부분을 사용하는 WCF 클라이언트 빌더가되었습니다. 다시 우리는 이것을 오랫동안 사용하지 않을 것이고 WCF 클라이언트를 프로그래밍 방식으로 구축하는 것이 좋습니다.
업데이트 : appsettings.json을 사용하여 내 환경 기반 설정을 포함하고 .net Standardand의 system.servicemodel 클래스를 사용하여 wcf에 연결하는 방법을 추가했습니다. 그것은 위대한 작품!
https://www.nuget.org/packages/SlowCheetah –
각 환경에 대해 app.config를 어떻게로드합니까? 그리고 "변환"이란 무엇을 의미합니까 – DOMZE
app.config 파일을 마우스 오른쪽 버튼으로 클릭하고 '구성 변환 추가'를 선택했습니다. 그것은 각 환경에 대한 설정 파일을 생성하고 나는 그 중 하나를 마우스 오른쪽 버튼으로 클릭하고 cpnfig 미리보기 또는 그와 비슷한 것을 선택할 때 변경 사항을 볼 수도 있습니다. 하지만 게시를 할 때, 환경을 기반으로 해당 app.config 파일을 변형 및 복사하지 않습니다. – Alina