我在Visual Studio 2017中有一个C#类库项目,我想为其创建一个类图。已安装类设计器。查看命名空间或类视图中的任何类的上下文菜单,我会看到" View Class Diagram"选项以及视图菜单栏上的按钮。
然而,当我点击按钮或上下文菜单项时,似乎没有任何事情发生!回到解决方案资源管理器视图,我可以看到已将ClassDiagram1.cd
文件添加到项目中。尝试打开此文件会导致出现错误消息:
此项目类型不支持类图。
将类图文件添加到C#,VB或C ++项目并尝试再次打开它。
我很高兴能够自己添加图表,而不是在无法生成的情况下生成图表。但我也无法将空白类图文件添加到项目中,因为该文件类型未出现在“添加新项”表单的文件类型列表中。
如何为类库中包含的类创建类图?或者类库可能不适用于库?如果后者是这种情况,那么有任何来自Microsoft的信息A)确认这一点,并且B)解释为什么程序中的类可以被图解而不是库中的类。 (我已经花了一些时间在谷歌搜索这个问题,但没有找到任何特定的类库)
答案 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安装程序。它有效!
答案 2 :(得分:2)
据我所知,在VS 2017中,.Net Standard和.Net Core项目(它们共享相同的项目类型)目前不支持类图。There are several threads about this on Developer Community,但没有收到到目前为止,微软的回应很多。
您可能需要考虑在the dotnet/standard repo上创建有关此问题。