Как создать диаграмму классов для библиотеки классов в VS2017?
У меня есть проект библиотеки классов C# в Visual Studio 2017, для которого я хотел бы создать диаграмму классов. Конструктор классов установлен. Глядя на контекстное меню для пространства имен или любого из классов в представлении классов, я вижу опцию "просмотреть диаграмму классов", а также кнопку для нее в строке меню представления.
однако, когда я нажимаю кнопку или пункт контекстного меню, ничего не происходит! Переходя к представлению обозревателя решений, я вижу ClassDiagram1.cd
файл добавлен в проект. Попытка открыть этот файл, хотя приводит к сообщению об ошибке:
диаграммы классов не поддерживаются этим типом проекта.
добавьте файл диаграммы классов в проект C#, VB или C++ и попробуйте открыть его снова.
Я был бы счастлив сам добавить диаграмму, а не генерировать ее, если генерация невозможна. Но я также не могу добавить пустой файл диаграммы классов в проект как этот тип файла не отображается в списке типы файлов в форме Добавить новый элемент.
Как создать диаграмму классов для классов, содержащихся в библиотеке классов? Или, может быть, диаграммы классов недоступны для библиотек? Если последнее имеет место, есть ли какая-либо информация от Microsoft до A) подтвердите это и B) объясните, почему классы в программе могут быть схематизированы, но не классы в библиотеке. (Я уже потратил некоторое время на поиск этого вопроса, но не нашел ничего конкретного для класса библиотеки)
3 ответов
поскольку это ссылка Google #1 для проблем с дизайнером классов, и на удивление никто не удосужился ответить до сих пор (особенно часть "диаграммы классов не поддерживаются этим типом проекта"), позвольте мне перезвонить:
закрыть VS и открыть файл в
C:\Program Files (x86)\Microsoft Visual Studio17\Community\MSBuild\Microsoft\VisualStudio\Managed\Microsoft.CSharp.DesignTime.targets
поиск строки
<ProjectCapability Include="CSharp;Managed"/>
напишите "ClassDesigner" как такую возможность:
<ProjectCapability Include="CSharp;Managed;ClassDesigner"/>
сохраните файл и повторно откройте VS. Ваша схема классов должна работать. Вы должны даже иметь возможность добавлять новые (по крайней мере, я могу в моем проекте библиотеки классов .NET Standard 2.0 в VS2017.5.3).
на самом деле правильный ответ-использовать установщик Visual Studio, как описано здесь в документации Microsoft. И это работает!
насколько я могу судить, диаграммы классов в настоящее время не поддерживаются в проектах .Net Standard и .Net Core (они имеют один и тот же тип проекта) в VS 2017. есть несколько тем об этом в сообществе разработчиков, который до сих пор не получил большого ответа от Microsoft.
вы можете рассмотреть возможность создания проблемы об этом на dotnet / стандартное РЕПО.