Как изменить тип проекта в visual studio
Есть ли что-нибудь в файлах .sln или .vcproj (или где-либо еще), что определяет тип / подтип проекта?
Где эта информация хранится в файлах VS?
Вы имеете в виду выход проекта? например, приложение, библиотека классов и т. д.?В XML-файлах проекта:
Консольные приложения содержат:
Приложения WinForms содержат:
Проекты библиотеки (.dll) содержат:
Проекты .dll могут содержать ProjectTypeGuids, например, для создания dll для тестов NUnit, которые вы используете <ProjectTypeGuids><3AC096D0-A1C2-E12C-1390-A8335801FDAB>;</ProjectTypeGuids>3AC096D0-A1C2-E12C-1390-A8335801FDAB> Я думаю, что метод руководств по проекту лучше. У меня было, <OutputType>Exe</OutputType> но оказалось, что это было веб-приложение через GUID, а не консольное приложениеНекоторые дальнейшие исследования, и я нашел это:
Мой .sln файл содержит:
Файл .vproj определяет тип проекта, например, следующее определяет проект C ++.
Тег проекта также включает версию компилятора.
В качестве примечания, я считаю, что это расширение: .vcproj :)Дважды щелкните «Мой проект» в обозревателе решений и посмотрите на поле со списком «Тип приложения:». Он сообщает вам (и позволяет вам изменить) тип проекта.
Не знаете о двойном щелчке? Я попадаю туда из «Проект / Свойства». То же самое. Вы знаете Microsoft - три способа добраться до любой функции. Я уверен, что есть и сочетание клавиш. Ага, где это? Самое близкое, что я вижу, - это тип вывода в разделе «Приложение».Попробуйте добавить новый элемент в проект, и он покажет вам элементы, относящиеся к этому типу проекта, вместе с параметрами по умолчанию.
Следуйте: Обозреватель решений -> наведите указатель мыши / щелкните правой кнопкой мыши на элементе проекта (не на папке проекта. Проверьте представление свойств, чтобы узнать, щелкнули ли вы папку или проект) -> Свойства. Тогда вся информация доступна по проекту.
Щелкните правой кнопкой мыши решение и щелкните открыть папку в проводнике файлов. Перейдите к файлу проекта. наведите на него указатель, всплывающая подсказка отображает тип файла проекта.
Наконец-то я понял, что Visual Studio отслеживает, как вы создаете проект (другими словами, какой шаблон проекта вы выбираете изначально) и затем фильтрует ваши параметры на основе этого первоначального решения. Информация хранится в файле *.csproj как <ProjectTypeGuids> элемент.
Помимо редактирования файла *.csproj, существует ли "правильный" способ изменить тип проекта для существующего проекта?
Учитывая важность этого параметра, кажется, что в графическом интерфейсе есть место, чтобы изменить его, но я не смог его найти. Спасибо!
ОТВЕТЫ
Ответ 1
В визуальной студии тип проекта хранится в XML файле .csproj как GUID. Вы должны изменить GUID, чтобы определить нужный тип проекта.
Ответ 2
Небольшая коррекция: Visual Studio не отслеживает шаблон проекта, используемый для создания проекта. Система проекта в значительной степени не знает первоначальный шаблон, используемый для проекта. В системе проекта есть несколько элементов (например, Тип проекта), которые имеют то же имя, что и конкретные шаблоны, но это совпадение, и два не окончательно исправлены.
Единственное, что действительно может быть изменено с точки зрения типа проекта, это, по сути, тип вывода. Это может иметь значение Class Library, Console Application и Windows Application. Вы можете изменить это, перейдя на страницу свойств проекта (щелкните правой кнопкой мыши "Свойства" ) и измените поле со списком "Тип вывода".
Возможно, для проектной системы поддерживаются другие типы проектов, но их довольно мало и они не связаны с шаблоном проекта окончательно.
Ответ 3
Почему вы хотите изменить это?
Я просто добавлю еще один проект в решение с тем, который вы хотите, переместите файлы, а затем удалите исходный проект.
Ответ 4
Но вы должны принять к сведению, что если вы используете некоторые внешние пакеты, пакеты могут быть несовместимы с новым типом проекта. Таким образом, вам может понадобиться получить совместимые пакеты.
(1) Что вы должны делать. Есть очень немного вещей, которые вы должны делать делать определенным образом, каждый раз, но есть несколько.
- Название ваши первичные ключи, используя формат «[singleOfTableName] ID». То есть, будет ли ваше имя таблицы Заказчиком или Клиентами , первичный ключ должен быть CustomerID .
- Кроме того, иностранные ключи должны последовательно указываться в разных таблицах. Должно быть законно избивать кого-то, кто этого не делает. Я хотел бы представить, что хотя определенные ограничения внешнего ключа часто важны, согласованное именование внешнего ключа всегда важно
- В базе данных должны быть внутренние соглашения. Хотя в последующих разделах вы увидите, что я очень гибкий, в , имя базы данных должно быть очень последовательным. Клиенты или Customer менее важны для вашей таблицы для клиентов, чем в той же самой базе данных. И вы можете перевернуть монету, чтобы определить, как использовать подчеркивания, но тогда вы должны продолжать использовать их одинаково . Если вы этого не сделаете, вы плохой человек, у которого должна быть низкая самооценка.
(2) Что вы, вероятно, должны сделать.
- Поля, представляющие один и тот же тип данных в разных таблицах , должны быть названы одинаковыми. Не используйте Zip на одной таблице, а ZipCode - на другом.
- Чтобы разделить слова в именах таблиц или столбцов, используйте PascalCasing. Использование camelCasing не было бы внутренне проблематичным, но это не соглашение, и это выглядело бы забавно. Я обращу внимание на символы подчеркивания. (Вы не можете использовать ALLCAPS, как в прежние дни. OBNOXIOUSTABLE.ANNOYING_COLUMN был в порядке 20 лет назад, но не сейчас.)
- Не искусственно сокращать или сокращать слова. Лучше для названия быть длинным и ясным, чем коротким и запутанным. Ультра-короткие имена - это перерыв от более темных, более диких времен. Cus_AddRef. Что это такое? Справочный адрес адресата? Дополнительный возврат клиента?
- Я действительно думаю, что вы должны иметь множественные имена для таблиц
2 ответа
Небольшое исправление: Visual Studio не отслеживает шаблон проекта, использованный для создания проекта. Системе проектов практически неизвестен исходный шаблон, используемый для проекта. В системе проектов есть несколько элементов (например, Тип проекта), которые имеют то же имя, что и определенные шаблоны, но это совпадение, и эти два элемента окончательно не исправлены.
Единственное, что действительно может быть изменено с точки зрения типа проекта, - это тип вывода. Это может иметь значение «Библиотека классов», «Консольное приложение» и «Приложение Windows». Вы можете изменить это, перейдя на страницу свойств проекта (щелкните правой кнопкой мыши «Свойства») и изменив поле со списком Тип вывода.
Почему вы хотите это изменить?
Я бы просто добавил в решение еще один проект с тем, который вам нужен, переместил файлы, а затем удалил исходный проект.
Windows Store
Категория проектов Windows Store появилась в Visual Studio 2013. Ранее шаблон Windows Store находился в категории Windows. Эта категория появляется только если вы работаете под управлением операционной системы версии Windows 8.1. Проекты этого типа создаются для приложений Windows Runtime.
Windows
Категория проектов Windows - самая крупная. Она включает в себя большинство распространенных типов проектов, выполняемых в пользовательских операционных системах. В частности, она содержит выполняемые проекты Windows Forms, проекты приложений Console и приложения Windows Presentation Foundation (WPF). Эти типы проектов предусматривают создание сборки (.exe), выполняемой непосредственно пользователем. Категория Windows включает также несколько типов библиотечных сборок, на которые легко ссылаться из других проектов. К ним относятся как библиотеки классов, так и библиотеки элементов управления для приложений Windows Forms и WPF. Файлы библиотек классов имеют хорошо известные расширения DLL. К этой же категории относится тип проектов Windows Service.
Web
Office
Как следует из названия этой категории, к ней относятся управляемые программные надстройки для продуктов Microsoft Office, таких как Outlook, Word или Excel. Проекты этих типов используют средства Visual Studio Tools for Office (VSTO) и способны создавать надстройки для большинства продуктов, включая пакеты Office 2003, Office 2007, Office 2010 и Office 2013.
SharePoint
Эта категория с самоочевидным названием содержит проекты, предназначенные для веб-платформ Windows SharePoint Services, таких как SharePoint Workflows или Team Sites.
Database
Данная категория содержит типы проектов для создания кода, который можно использовать на сервере SQL Server. К ним относятся хранимые процедуры, пользовательские типы и функции, триггеры и специальные агрегирующие функции.
Cloud
По умолчанию раздел Cloud содержит только ссылку, которая может извлечь Windows Azure SDK. После установки SDK, появляются дополнительные шаблоны проектов, связанных с разработкой приложений Azure.
LightSwitch
Категория проектов LightSwitch появилась в Visual Studio 2013. Сам продукт используется для быстрого создания бизнес-приложений с использованием новейших технологий. Шаблоны проектов в этой категории позволяют создавать приложения как для настольных, так и для HTML.
Reporting
К этой категории относится тип проекта, идеально подходящий для быстрой генерации сложных отчетов об источнике данных.
Silverlight
Эта категория содержит типы для создания приложений Silverlight Applications или проектов Class Library.
Test
Данная категория включает в себя тип для проектов, содержащих тесты, использующие каркас для тестирования модулей MSTest.
WCF
Эта категория содержит большое количество типов проектов для создания приложений, обеспечивающих веб-службы с использованием технологии Windows Communication Foundation (WCF).
Workflow
Эта категория содержит большое количество типов проектов для создания библиотек и приложений, реализующих последовательные процессы и конечные автоматы.
Формат файлов проекта
Для того чтобы отобразить файл проекта в формате XML, следует щелкнуть правой кнопкой мыши на проекте и выбрать команду Unload. Затем необходимо снова щелкнуть правой кнопкой мыши на проекте и выбрать команду Edit <project name>. В результате в окне редактора XML, поддерживающего технологию IntelliSense, появится файл проекта.
Читайте также: