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"
이렇게하면 참조 오류가 해결됩니다.
Reference
이 문제에 관하여(Visual Studio 솔루션 템플릿), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kero3/items/acc9e32c261bab8a99b3
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
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"
이렇게하면 참조 오류가 해결됩니다.
Reference
이 문제에 관하여(Visual Studio 솔루션 템플릿), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kero3/items/acc9e32c261bab8a99b3
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
.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"
이렇게하면 참조 오류가 해결됩니다.
Reference
이 문제에 관하여(Visual Studio 솔루션 템플릿), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kero3/items/acc9e32c261bab8a99b3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)