#visual-studio-2010 #nuget
#visual-studio-2010 #nuget
Вопрос:
Привет всем, у меня есть локальный исходный код Nuget с пакетом, содержащим некоторые элементы по умолчанию, которые я хочу использовать в своих проектах (корпоративные модели и стили по умолчанию и некоторые страницы по умолчанию). Это всего лишь копирование элементов в проект и добавление строки подключения к web.config, ничего особенного.
Я могу установить пакет через консоль диспетчера пакетов и графический интерфейс. Однако он никогда не отображается как установленный. Это означает, что я не могу его обновить или удалить. Если я перехожу к графическому интерфейсу, он показывает пакет как не установленный, даже если он добавил все элементы в проект и имеет папку для пакета в каталоге packages.
Кроме того, я хочу использовать этот пакет NuGet для перезаписи некоторых файлов, которые уже существуют в проекте MVC по умолчанию (например, AccountController и LogonUserControl.ascx). Можно ли это сделать, или мне нужно будет начать с пустого шаблона MVC вместо шаблона по умолчанию?
Packages.config:
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="MyCompanyMVC" version="1.1" />
</packages>
Комментарии:
1. Ваш проект заканчивается с packages.config? Вы уверены, что правильно собрали пакет? Есть ли папка packages?
2. Да, есть папка packages, и в ней содержится мой пакет, вот почему я так озадачен ошибкой! Пакет был создан вручную в Nuget Package Explorer, поэтому я надеюсь, что он собрал пакет правильно!
3. Есть ли у вас в пакете папка содержимого с файлами, которые применяются к вашему проекту? Вы следовали приведенным здесь инструкциям docs.nuget.org/docs/creating-packages / … ? Существуют обычные папки, которые вы должны использовать для сборки своего пакета.
4. Да, все мои файлы содержатся в папке содержимого. Когда я запускаю install-package, все файлы отправляются туда, где они должны быть.
5. Какую версию nuget вы используете? И есть ли packages.config в этом проекте с вашим пакетом в списке?
Ответ №1:
NuGet не перезаписывает файлы — я не верю, что есть способ принудительно это сделать, однако вы, вероятно, могли бы «обойти» это, используя скрипт PowerShell (tools / install.ps1), чтобы удалить старый файл и переименовать введенный файл, чтобы иметь требуемое имя.