如何在VS2017中为类库创建类图?

时间:2017-07-14 12:17:22

标签: c# visual-studio-2017 class-diagram class-library

我在Visual Studio 2017中有一个C#类库项目,我想为其创建一个类图。已安装类设计器。查看命名空间或类视图中的任何类的上下文菜单,我会看到" View Class Diagram"选项以及视图菜单栏上的按钮。

然而,当我点击按钮或上下文菜单项时,似乎没有任何事情发生!回到解决方案资源管理器视图,我可以看到已将ClassDiagram1.cd文件添加到项目中。尝试打开此文件会导致出现错误消息:

  

此项目类型不支持类图。

     

将类图文件添加到C#,VB或C ++项目并尝试再次打开它。

我很高兴能够自己添加图表,而不是在无法生成的情况下生成图表。但我也无法将空白类图文件添加到项目中,因为该文件类型未出现在“添加新项”表单的文件类型列表中。

如何为类库中包含的类创建类图?或者类库可能不适用于库?如果后者是这种情况,那么有任何来自Microsoft的信息A)确认这一点,并且B)解释为什么程序中的类可以被图解而不是库中的类。 (我已经花了一些时间在谷歌搜索这个问题,但没有找到任何特定的类库)

3 个答案:

答案 0 :(得分:7)

由于这是关于类设计器问题的Google#1链接,并且令人惊讶的是到目前为止没有人关心回答(特别是部分"类图表不支持此项目类型"),让我来一声在:

关闭VS并在

处打开文件
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\Microsoft\VisualStudio\Managed\Microsoft.CSharp.DesignTime.targets

搜索

<ProjectCapability Include="CSharp;Managed"/>

写&#34; ClassDesigner&#34;像这样的能力:

<ProjectCapability Include="CSharp;Managed;ClassDesigner"/>

保存文件并重新打开VS.您的类图现在应该可以工作了。您甚至可以添加新的(至少我可以在VS2017.5.3的.NET Standard 2.0类库项目中)。

答案 1 :(得分:4)

实际上,正确答案是使用Microsoft文档中所述的Visual Studio安装程序。它有效!

how-to-add-class-diagrams-to-projects

答案 2 :(得分:2)

据我所知,在VS 2017中,.Net Standard和.Net Core项目(它们共享相同的项目类型)目前不支持类图。There are several threads about this on Developer Community,但没有收到到目前为止,微软的回应很多。

您可能需要考虑在the dotnet/standard repo上创建有关此问题。