Nuget - narzędzia do pisania dla konsoli Menedżera pakietów (custom cmdlets)
Zainstalowałem NuGet package manager i naprawdę kocham rozszerzenie mvc-scaffold. Chciałbym napisać podobne narzędzie do moich projektów.
Czy jest jakaś Referencja API lub jakaś dokumentacja dla nuget, z której mogę się nauczyć ? TIA za wszelkie sugestie.
Edytuj: Pytanie jest już "odpowiedział" (thx jeszcze raz), oto kilka linków, które mogą być pomocne:
- http://nuget.codeplex.com/releases/view/59864 - package explorer (pobierz + zobacz co jest w paczce-dzięki Bogu za komentarze w skryptach mvc:))
- http://channel9.msdn.com/Series/mvcConf/mvcConf-2-Steve-Sanderson-MvcScaffolding - wideo z mvcConf2
- i oczywiście Blog Steve ' a Sandersona : http://blog.stevensanderson.com /
1 answers
Napisałem aktualną wersję MvcScaffolding, o której wspomniałeś w swoim pytaniu. Oto jak dodaje cmdlety PowerShell do konsoli Menedżera pakietów:
- cmdlety są napisane w C# i skompilowane do. NET assembly (Zobacz http://msdn.microsoft.com/en-us/magazine/cc163293.aspx )
- . NET assembly znajduje się w folderze "Narzędzia" MvcScaffolding (zobacz http://docs.nuget.org/docs/creating-packages/creating-and-publishing-a-package#From_a_convention_based_working_directory)
- Mvcscaff zawiera również plik init. ps1, który NuGet uruchamia się za każdym razem, gdy otwierasz rozwiązanie zawierające go (opisane również na http://docs.nuget.org/docs/creating-packages/creating-and-publishing-a-package#Automatically_Running_PowerShell_Scripts_During_Package_Installation_and_Removal). skrypt ten używa polecenia PowerShell "Import-Module" do zaimportuj cmdlety z zestawu. NET, udostępniając je w konsoli.
Zauważ, że nie jest konieczne zapisywanie cmdletów w C# i wywoływanie Import-Module. Prostszą alternatywą jest zapisanie ich w PowerShell (zobacz http://technet.microsoft.com/en-us/magazine/ff677563.aspx ) i zdefiniuj je w wierszu w pliku init. ps1 pakietu NuGet.
Lub, jeśli twoje pytanie dotyczy sposobu dodawania niestandardowych rusztowań do MvcScaffolding (np. MyCustomThing-somecustomparams"), następnie użyj polecenia "Scaffold CustomScaffolder MyCustomThing", a następnie Edytuj pliki PS1 / T4, które pojawiają się w folderze CodeTemplates/Scaffolders. Wkrótce opublikuję więcej szczegółów na ten temat.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-09-25 16:02:05