aspose.info
RU

СЛН

Обновлено

SLN вариант №

Файл с расширением .SLN представляет собой файл решения Visual Studio, в котором хранится информация об организации проектов в файле решения. Содержимое такого файла решения записывается в виде простого текста внутри файла, и его можно просмотреть/отредактировать, открыв файл в любом текстовом редакторе. Информация, содержащаяся в файле решения, остается постоянной и используется для загрузки информации, связанной с решением, такой как проекты и любой другой необходимой информации. Файлы проекта, на которые ссылается файл решения, содержат дополнительную информацию, позволяющую среде заполнять иерархию элементами этого проекта. Никакие данные не сохраняются в файле .sln, хотя при необходимости информация о проекте может быть записана в файл .sln.

История версий SLN

Версия формата решения менялась с каждым решением Microsoft Visual Studio с течением времени. Подробности о них следующие.

Версия Visual StudioВерсия формата решения
20038.00
20059.00
200810.00
201011.00
201312.00
201512.00
201712.00

Содержимое файла решения

Файл решения состоит из нескольких разделов, которые считываются средой для загрузки проекта. Пример содержимого файла .sln показан ниже.

Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") # "Project1", "Project1.vbproj", "{8CDD8387-B905-44A8-B5D5-07BB50E05BEA}"  
EndProject  
Global  
  GlobalSection(SolutionNotes) # postSolution  
  EndGlobalSection  
  GlobalSection(SolutionConfiguration) # preSolution  
       ConfigName.0 # Debug  
       ConfigName.1 # Release  
  EndGlobalSection  
  GlobalSection(ProjectDependencies) # postSolution  
  EndGlobalSection  
  GlobalSection(ProjectConfiguration) # postSolution  
   {8CDD8387-B905-44A8-B5D5-07BB50E05BEA}.Debug.ActiveCfg # Debug|x86  
   {8CDD8387-B905-44A8-B5D5-07BB50E05BEA}.Debug.Build.0 # Debug|x86  
   {8CDD8387-B905-44A8-B5D5-07BB50E05BEA}.Release.ActiveCfg # Release|x86  
   {8CDD8387-B905-44A8-B5D5-07BB50E05BEA}.Release.Build.0 # Release|x86  
  EndGlobalSection  
  GlobalSection(ExtensibilityGlobals) # postSolution  
  EndGlobalSection  
  GlobalSection(ExtensibilityAddIns) # postSolution  
  EndGlobalSection  
EndGlobal

Декларация проекта

Файл решения может содержать более одного объявления проектов, а также разных типов проектов. Например, один файл решения может содержать как проект CSharp, так и проект VB.NET. Эти типы различаются в решении с помощью Project-Type-GUID. Приведенную выше декларацию проекта можно обобщить следующим образом для ясности понимания.

Project("{Project-Type-GUID}") # "Project-Name", "Project-Path.extension", "{Project-GUID}"

Project-Type-GUID: Project-Type-GUID уникален для различных типов проектов и используется программой чтения решений для определения типа проекта. В данном случае F184B08F-C81C-45F6-A57F-5ABD9991F28F показывает, что это проект VB.NET.

Project GUID: Уникальный GUID проекта, который отличает его от других проектов в решении. Уникальный идентификатор проекта в решении позволяет другим проектам в решении получить к нему доступ.

На основе информации, содержащейся в разделе проекта файла .sln, среда загружает каждый файл проекта. Затем сам проект отвечает за заполнение иерархии проектов и загрузку любых вложенных проектов. Любые изменения, внесенные в решение, сохраняются обратно в файл решения при сохранении или закрытии проекта.

Решение Visual Studio VS проект

Проект. По логике вещей, когда вы начинаете создавать приложение или программное обеспечение с помощью Visual Studio, вы начинаете новый проект. Проект содержит все необходимые файлы, такие как исходный код, значки, изображения, файлы данных и т. д., которые будут скомпилированы в исполняемое приложение, веб-сайт или библиотеку.

Решение. Решение содержит один или несколько проектов. Таким образом, решение похоже на контейнер для проектов Visual Studio. Логически можно сказать, что кто-то хочет получить комплексное решение для своего бизнеса, включая веб-сайт, настольное приложение, сервис для отдыха и мобильное приложение.

Использованная литература

См. также