Visual Studio 솔루션 템플릿

3039 단어 VisualStudioC#

1. 환경



Visual Studio 2019 Community 2019 버전 16.4.3
Windows10 64bit 1809

2. 템플릿 만들기



2-1. 프로젝트 만들기



[C#]-[Windows]-[기능 확장]을 선택하고 "C# Project Template"를 선택.



#2-2.참고 정보



3. 솔루션 템플릿을 만드는 방법



3-1. 솔루션 템플릿 파일 수정



.vstemplate 파일의 Type을 "Project"에서 "ProjectGroup"으로 한다.

ProjectCollection 태그에 ProjectTemplateLink를 추가합니다.

    <ProjectCollection>

      <ProjectTemplateLink ProjectName="$projectname$.Domain" CopyParameters="true">

        DDDSample.Domain\MyTemplate.vstemplate

      </ProjectTemplateLink>

      <ProjectTemplateLink ProjectName="$projectname$.Infrastructure" CopyParameters="true">

        DDDSample.Infrastructure\MyTemplate.vstemplate

      </ProjectTemplateLink>


    </ProjectCollection>


3-2. 각 프로젝트 파일의 템플릿 생성



솔루션에 포함된 프로젝트 수만 템플릿 내보내기를 수행합니다.

・템플릿의 종류의 선택에서는 「프로젝트의 템플릿」을 선택
· 템플릿 옵션을 선택하면 "템플릿을 자동으로 Visual Studio로 가져 오기"의 선택을 취소합니다.

창조된 zip은 진화한다.

3-3. 각 프로젝트의 종속성 설정



프로젝트 내의 *.csproj 파일을 편집할 필요가 있다.

예로 'MyApp'라는 솔루션에 'MyApp.Domain'과 'MyApp.Infrastructure'라는 프로젝트가 존재한다고 한다.
Infrastructure는 Domain을 참조하는 경우를 설명한다. 또한
「MyApp」는 템플릿이므로 가변으로, Domain, Infrastructure는 고정이 된다.

Infrastructure csproj 파일을 열고 다음과 같이 설정합니다.

  <ItemGroup>
    <ProjectReference Include="..\$ext_safeprojectname$.Domain\$ext_safeprojectname$.Domain.csproj">
      <Project>{97b2ddcf-cb5a-4e25-aa31-671f23f18f1f}</Project>
      <Name>$ext_safeprojectname$.Domain</Name>
    </ProjectReference>
  </ItemGroup>

3-4.Test 프로젝트 참조 오류



Nuget 패키지를 복원해도 참조 오류가 해결되지 않았습니다.
Nuget 패키지의 참조 경로 계층 구조를 수정해야했습니다.
修正前:<HintPath>..\packages\~
修正後:<HintPath>..\..\packages\~

솔루션을 마우스 오른쪽 버튼으로 클릭하고 Nuget 패키지를 복원한 후
패키지 관리자 콘솔에서 "Update-Package -Reinstall"
이렇게하면 참조 오류가 해결됩니다.

좋은 웹페이지 즐겨찾기