2017-10-13 18 views
0

Visual Studio 2017 엔터프라이즈 버전을 사용하여 로컬 SSRS 보고서를 표시하는 WinForms 데스크톱 응용 프로그램을 개발하고 있습니다. VS2017은 기본적으로 ReportViewer 컨트롤을 포함하지 않으므로 ReportViewer에 해당하는 NuGet 패키지를 참조하고 메서드로 수동으로 컨트롤을 인스턴스화하는 코드를 추가하여 here으로 설명하는 것이 좋습니다.Visual Studio 2017은 겉으로보기에 불필요한 어셈블리를 많이 배포합니다.

Now : ClickOnce를 통해 응용 프로그램을 컴파일하거나 배포하려고하면 다음과 같이 직접 참조하지 않고 응용 프로그램에 아무런 도움이되지 않는 어셈블리가 상당합니다 스크린 샷.

enter image description here

목록은 Microsoft.VisualStudio 네임 스페이스 또는 Microsoft.Build 네임 스페이스의 많은 어셈블리에 계속적으로 간다. 이 어셈블리와 번역 폴더는 bin \ debug에서도 찾을 수 있습니다.

무엇입니까? 이들은 이전 버전의 VS에서는 추가되지 않았습니다! 어떻게 그들을 제거 할 수 있습니까? 그리고이 "c"어셈블리는 무엇입니까?

답변

0

전혀 신경 쓰지 않고 해결책을 찾았습니다.

문제는 NuGet 패키지에도 디자인 어셈블리가 포함되어있어 물론 Visual Studio API를 참조하여 ReportViewer 컨트롤의 디자인 기능을 제공한다는 것입니다. 이 어셈블리에 대한 참조는 "Copy Local = true"로 설정되어 모든 종속성도 출력에 복사되었습니다.