VS2010 package manager
![](/VS2010_PackageManager/Package.gif)
Это возмутительное поведение взбесившегося мешка с деньгами уже привело к тому, что на микрософтовской платформе на свободном рынке (в интернете) изготавливается всего 0,4% процента сайтов.
Однако, отставание микрософтовких технологий от бесплатных (и никем не навязываемых насильно) не всегда столь уж велико. Конечно, мусорный Windows с нехилой ценой, сертификацией в ФСБ, с вырезанной криптографией и вставленными жучками, с каким-то никому не нужным функционалом проигрывает Linux с открытым кодом (многократно просмотренным тысячами программистов на предмет жучков) - с OpenSource функционалом, который можно расширять и дополнять по своему усмотрению.
Конечно, Visual Studio 2010 пока безнадежно проигрывает бесплатному Eclipse (а уж тем более платным имплементациям Eclipse - типа Adobe Flex Builder). Хотя Микросфт ломит за свою студию 13 тысяч долларов (в полной комплектации Team Edition), а более развитый Eclipse полностью бесплатный. Но должен же за счет чего-то богатеть Билл Гейтс! И откаты в нашем министерстве образования должны за счет чего-то финансироваться - чтобы именно микрофовский мусор включался в обязательные школьные программы.
Об Eclipse у меня уже написано немало (Подготовка к работе Eclipse)- как немало написано в 2005-м году о старой Visual Studio 2005 (когда я переходил на нее с Visual Studio 2003). Еще больше написано о работе в платных имплементация Eclipse - например Создание асинхронного прокси для обращения к WCF средствами Adobe flex builder.
Поэтому эта заметка будет как продолжение топика Знакомство с Visual Studio 2010 - о новом функционале VS2010, о Package Manager - возможности автоматического расширения проектов с помощью дополнительных программных пакетов, скачиваемых студией из Инета и добавляемых к проекту. А это уже серьезно приближает качество билогейтсовской Visual Studio к качеству бесплатного Eclipse (в котором такой функционал был от рождения).
Для примера я установлю к одному из своих проектов пакеты трассировки MVC-запросов. Меня по прежнему бесит URL-реврайтер, мне по-прежнему надо напрягаться чтобы понять какое именно правило реврайтинга срабатывает - я хочу видеть это визуально. Впрочем я не одинок, это пакет трассировк правил реврайтинга скачали почти все МVС-программисты, но просто не все признаются что их тоже бесит URL-реврайтинг. Кроме этого, можно наглядно увидеть жизненный цикл странички (когда надо что-то переопределять самому), можно увидеть что уходит в постбеках, удобно отлаживать AJAX, видно в каких местах сайт тормозит - в общем штуковина совершенно бесплатная и весьма полезная.
Итак, для начала нужно установить Менеджер пакетов от NUGET - без этого ничего работать не будет.
![](/VS2010_PackageManager/Nuget1-1.gif)
![](/VS2010_PackageManager/Nuget2-1.gif)
![](/VS2010_PackageManager/Nuget3-1.gif)
Теперь начинают работать камдлеты - и пакеты можно ставить либо из командной строки, либо из GUI.
![](/VS2010_PackageManager/Cmdlet1-1.gif)
![](/VS2010_PackageManager/Cmdlet2-1.gif)
Теперь я из GUI установлю несколько пакетов ELMAH и GLIMPSE.
![](/VS2010_PackageManager/Install-1-1.gif)
![](/VS2010_PackageManager/Install-2-1.gif)
![](/VS2010_PackageManager/Install-3-1.gif)
![](/VS2010_PackageManager/Install-4-1.gif)
![](/VS2010_PackageManager/Install-5-1.gif)
![](/VS2010_PackageManager/Install-7-1.gif)
![](/VS2010_PackageManager/Install-8-1.gif)
![](/VS2010_PackageManager/Install-9-1.gif)
![](/VS2010_PackageManager/Install-10-1.gif)
![](/VS2010_PackageManager/Install-11-1.gif)
В результате установки в проекте многое изменилось - добавилась Area, изменился web-конфиг проекта, добавились ссылки на библиотеки:
![](/VS2010_PackageManager/Config1_1.gif)
![](/VS2010_PackageManager/Config2_1.gif)
![](/VS2010_PackageManager/Config3_1.gif)
![](/VS2010_PackageManager/Config4_1.gif)
![](/VS2010_PackageManager/Config5_1.gif)
![](/VS2010_PackageManager/Config6_1.gif)
![](/VS2010_PackageManager/Config7_1.gif)
А вот и конечный итог установки - журналы трассировок. Трассировка ведется естественно на сервере, а на панель в браузере передается по AJAX:
![](/VS2010_PackageManager/Glipmse1_1.gif)
![](/VS2010_PackageManager/Glipmse2_1.gif)
![](/VS2010_PackageManager/Glipmse3_1.gif)
![](/VS2010_PackageManager/Glipmse4_1.gif)
![](/VS2010_PackageManager/Glipmse5_1.gif)
![](/VS2010_PackageManager/Glipmse6_1.gif)
![](/VS2010_PackageManager/Glipmse8_1.gif)
![](/VS2010_PackageManager/Glipmse9_1.gif)
![](/VS2010_PackageManager/Glipmse10_1.gif)
![](/VS2010_PackageManager/Glipmse11_1.gif)
![](/VS2010_PackageManager/Glipmse12_1.gif)
![](/VS2010_PackageManager/Glipmse13_1.gif)
![](/VS2010_PackageManager/Glipmse14_1.gif)
![](/VS2010_PackageManager/Glipmse15_1.gif)
![](/VS2010_PackageManager/Glipmse16_1.gif)
![](/VS2010_PackageManager/Glipmse17_1.gif)
![](/VS2010_PackageManager/Glipmse18_1.gif)
Полный список дополнений для Visual Studio (на момент написания этой заметки) вы можете увидеть здесь.
UPDATE. К сожалению, по прошествии некоторого времени этот инструмент Visual Studio работать перестал. Я не перестаю удивляться - почему любой микрософтовский продукт через короткое время работать перестает и почему каждая следующая версия того же продукта обязательно несовместима с предыдущей. Казалось бы, все так просто - зарезервируйте поле для расширения - и расширяйте возможности своего софта до бесконечности. Но нет, искусственно сделать работающее как бы ненужным, побудить вновь потратить деньги на какие-то новые продукты - это выверенная политика увеличения кеш-флоу этой компании. Политика, вызывающая понятную ненависть программистов и вообще всех, кто связался с микрософтом.
И вот что стала мне говорить студия по прошествии некоторого времени:
![](/VS2010_PackageManager/Schema-1_1.gif)
Пришлось отказаться от этого Package Manager'а и сгружать нужные библиотеки по известным именам - просто из командно строки.
![](/VS2010_PackageManager/Nuget-1_1.gif)
Update 2017 about NUGET.ORG
![](/VS2010_PackageManager/Nuget2017-1_1.gif)
![](/VS2010_PackageManager/Nuget2017-2_1.gif)
![](/VS2010_PackageManager/Nuget2017-3_1.gif)
![](/VS2010_PackageManager/Nuget2017-4_1.gif)
![](/VS2010_PackageManager/Nuget2017-5_1.gif)
![](/VS2010_PackageManager/Nuget2017-6_1.gif)
![](/VS2010_PackageManager/Nuget2017-7_1.gif)
![](/VS2010_PackageManager/Nuget2017-8_1.gif)
![](/VS2010_PackageManager/Nuget2017-9_1.gif)
![](/VS2010_PackageManager/Nuget2017-10_1.gif)
![](/VS2010_PackageManager/Nuget2017-11_1.gif)
![](/VS2010_PackageManager/Nuget2017-12_1.gif)
![](/VS2010_PackageManager/Nuget2017-13_1.gif)
![](/VS2010_PackageManager/Nuget2017-14_1.gif)
![](/VS2010_PackageManager/Nuget2017-15_1.gif)
![](http://forum.vb-net.com/GetTopicCount.png?id=0ED5FF7A-AA70-4D1B-8287-0DDA2E19B06C)
<SITEMAP> <MVC> <ASP> <NET> <DATA> <KIOSK> <FLEX> <SQL> <NOTES> <LINUX> <MONO> <FREEWARE> <DOCS> <ENG> <CHAT ME> <ABOUT ME> < THANKS ME> |