여러 프로젝트에서 재사용하려는 T4 포함 파일이 있습니다. 그래서 NuGet 패키지를 만들고 패키지의 Tools 폴더에 파일을 저장했습니다. 이제 패키지 \ PackageName.x.x.x \ Tools 폴더에 설치되고 프로젝트의 T4 파일에 include 지시문을 추가 할 수 있습니다. 그러나이 단점은 패키지의 새 버전을 만들 때 바뀌는 경로에 버전 번호가 있다는 것입니다. 프로젝트의 모든 include 지시문을 업데이트해야합니다. 아무에게도이 접근법에 대한 좋은 힌트를 알고 있습니까?NuGet 패키지로 T4 포함 파일을 배포하는 방법
3
A
답변
2
이러한 T4 템플릿이 라이브러리 내에 코드를 생성해야한다면 콘텐츠 디렉토리에 삽입 할 수 있습니다.
이들은 nuget 패키지에 대한 참조가있는 라이브러리에 추가됩니다. 따라서 툴을 컨텐츠 이름으로 바꾸거나 새 폴더 컨텐츠를 추가하면됩니다. 해당 폴더에 하위 폴더를 추가 할 수도 있습니다. 또는 .cs 파일을 거기에 넣으십시오.
2
T4는 MSBuild에서 속성을 인식하지 못합니다 지침,하지만 하나가하는 어셈블리를 포함한다. 따라서 기본 템플릿 클래스를 사용하고 NuGet 패키지에서 어셈블리를 참조 할 수 있습니다.
NuGet 2.5 (원래 게시물 당시에는 아마 사용 가능하지 않음)를 사용하면 msbuild .props 파일을 만들 수 있습니다. Assign $ (MSBuildThisFileDirectory) 어셈블리에 대한 상대 경로를 새 msbuild 속성에 결합합니다. 그런 다음 새 속성을 NuGet 패키지를 사용하는 프로젝트의 T4 템플릿에서 사용할 수 있습니다.
관련 문제
- 1. T4 : MSBuild와 Nuget Integration
- 2. ASP.NET MVC를 NuGet 패키지로 참조해야합니까?
- 3. ruby gem에서 nuget 패키지로 매핑
- 4. 내 ASP.NET MVC 호출기를 NuGet 패키지로 묶으시겠습니까?
- 5. Eclipse에서 Blackberry 응용 프로그램을 패키지로 패키징하고 장치에 배포하는 방법
- 6. Nuget 솔루션 폴더에 파일을 추가하는 방법
- 7. liferay에 theme.war 파일을 배포하는 방법
- 8. glassfish에 wab 파일을 배포하는 방법
- 9. Ninject.MVC3 Nuget 패키지로 ASP.NET MVC 3 앱을 올바르게 설정했습니다.
- 10. python 패키지로 실행 스크립트를 배포하는 올바른 방법은 무엇입니까?
- 11. PHP 웹 사이트를 IIS에 패키지로 배포하는 방법은 무엇입니까?
- 12. Java 파일을 배포하는 가장 좋은 방법
- 13. 공유 파워 쉘 파일을 Nuget 패키지에 포함 시키시겠습니까?
- 14. NuGet - T4 설치된 후 파일 등록 정보가 다릅니다.
- 15. T4 프로젝트 루트의 파일 경로 포함
- 16. 시각적 스튜디오 머신에 ttinclude 파일을 배포하는 가장 좋은 방법
- 17. NuGet 이외의 참조를 참조하여 NuGet 패키지 생성
- 18. NuGet Package'n'Publish 프로젝트는 XML 주석을 포함
- 19. CMake : Linux에서 대상/파일을 여러 패키지로 묶는 방법?
- 20. 런타임에 xap 파일을 동적으로 배포하는 방법
- 21. VC++ 런타임 파일을 배포하는 올바른 방법
- 22. 아폴로 서버에 .war 파일을 배포하는 방법
- 23. 너겟 패키지로 postbuild 이벤트 추가하기
- 24. XML 인텔리 센스 데이터가 포함 된 NuGet 패키지를 만드는 방법
- 25. T4 기능을 사용하는 방법
- 26. 여러 패키지로 jar 파일을 만드는 것이이 방법입니까?
- 27. CRED를 하위 패키지로 설정하는 방법
- 28. 애플릿을 배포하는 방법?
- 29. T4 런타임 템플릿 배포
- 30. 콘솔 앱으로 폴더를 배포하는 방법
내 프로젝트를 그런 콘텐츠로 오염시키지 마십시오. 나는 (http://stackoverflow.com/a/8364027/1083432) 여기에 설명 된대로 TextTransformation에서 클래스를 상속하는 솔루션에 대한 생각 (나중에 발견) – Jaap