śledzę ten post o tym, jak zbudować VSIX projekt, który będzie dodać kilka niestandardowych typów projektów MVC:VSIX z szablonów projektów oraz Nuget Pakiety
http://www.asp.net/mvc/tutorials/mvc-4/custom-mvc-templates
Chcę również zawierać dodatkowe pakiety Nuget , więc podążałem za this page from Nuget, ale wydaje mi się, że jest to dla VS2010 i pracuję w 2012.
Mam budynek projektu i wszystko działa brzoskwiniowo na mojej maszynie. Instalacja działa, pojawia się nowy typ projektu, a kiedy tworzę nowy projekt tego typu, wszystko działa idealnie.
Jednak, gdy wysyłam instalator do współpracownika, wszystko się psuje. Instalator działa, widzi nowy typ projektu, ale podczas tworzenia projektu otrzymuje komunikaty o błędach dotyczące niemożności zainstalowania żadnego z pakietów w węźle rozszerzenia. Potwierdziłem, że identyfikator produktu rozszerzenia jest poprawny (celowo zniekształciłem go w pliku .vstemplate podczas testowania i dało zupełnie inny błąd). Dodałem paczki do manifestu rozszerzenia, ale nie ma to znaczenia. Potwierdziłem również, że pliki .nupkg zostaną wdrożone w% ProgramFiles (x86)% \ Microsoft Visual Studio 11.0 \ Common7 \ IDE \ Extensions.
Wszelkie sugestie dotyczące tego, co należy zrobić? Sekcja .vstemplate
Niestandardowe Projektu
<WizardExtension>
<Assembly>NuGet.VisualStudio.Interop, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</Assembly>
<FullClassName>NuGet.VisualStudio.TemplateWizard</FullClassName>
</WizardExtension>
<WizardData>
<packages repository="registry" keyName="AspNetMvc4VS11" isPreunzipped="true">
<package id="EntityFramework" version="5.0.0" skipAssemblyReferences="true" />
<package id="jQuery" version="1.8.2" />
<!-- snip -->
</packages>
<packages repository="extension" repositoryId="SampleExtensionId">
<package id="Unity" version="3.0.1304.0" targetFramework="net45" />
<package id="Unity.WebAPI" version="0.10" targetFramework="net45" />
<!-- snip -->
</packages>
</WizardData>
source.extension.vsixmanifest tagi aktywów
<Assets>
<Asset d:VsixSubPath="ProjectTemplates\CustomMVCTemplate" etc/>
<Asset Type="Unity.3.0.1304.0" Path="Packages\Unity.3.0.1304.0.nupkg" />
<Asset Type="Unity.WebAPI.0.10" Path="Packages\Unity.WebAPI.0.10.nupkg" />
<!-- snip -->
</Assets>
Struktura plików
- Przedłużenie projektu
- Pakiety
- NugetPackage 1
- NugetPackage 2
- itp
- ProjectTemplates
- CustomMVCTemplate
- < plików niestandardowych projektów >
- CustomMVCTemplate
- source.extension.vsixmanifest
- Pakiety
Doskonałe znalezisko. Dodałem również kluczowy akapit do twojej odpowiedzi. – Olly