如何在VS2017中创建类库的类图?
我在Visual Studio 2017中有一个C#类库项目,我想创建一个类图。类设计器已安装。查看名称空间或类视图中任何类的上下文菜单我会在视图的菜单栏上看到“View Class Diagram”选项以及相同的按钮。如何在VS2017中创建类库的类图?
但是,当我点击按钮或上下文菜单项似乎没有发生!翻到解决方案资源管理器视图我可以看到ClassDiagram1.cd
文件已添加到项目中。尝试打开此文件虽然导致出现错误消息:
此类项目不支持类图。
将类图文件添加到C#,VB或C++项目中,然后尝试再次打开它。
我很高兴能够自己添加图表,而不是在无法生成图表时生成图表。但是我也不能将一个空白的类图文件添加到项目中,因为该文件类型没有出现在添加新项目窗体的文件类型列表中。
如何为包含在类库中的类创建类图?或者也许类图不可用于库?如果后者是这种情况,是否有任何信息从微软A)证实这一点,B)解释为什么程序中的类可以被图示,但不是图书馆中的类。 (我已经花了一些时间搜索这个问题,但没有发现任何特定的类库)
因为这是谷歌#1链接与类设计器和问题出奇的没有人在意回答到目前为止(尤其是部分“类图不受此项目类型支持”),让我附和:
关闭VS并打开该文件在
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\Microsoft\VisualStudio\Managed\Microsoft.CSharp.DesignTime.targets
搜索行
<ProjectCapability Include="CSharp;Managed"/>
写 “ClassDesigner” 作为这样一种能力:
<ProjectCapability Include="CSharp;Managed;ClassDesigner"/>
保存文件并重新打开VS.你的类图应该现在工作。你甚至应该可以添加新的(至少我可以在VS2017.5.3中的.NET Standard 2.0 Class Library项目中)。
仅供参考如果有人感兴趣,这个解决方案是(我猜)从https:/ /github.com/dotnet/project-system/issues/256。这是我与我在svick的回答评论中提到的那个重复的问题。 – Toby
据我所知,类图目前不支持.Net标准和.Net核心项目(他们共享同样的项目类型)在VS 2017. There are several threads about this on Developer Community,迄今没有收到太多微软的回应。
您可能要考虑在the dotnet/standard repo上创建一个关于此的问题。
Drat。好的,回到StarUML。谢谢(仅供参考,在此提出了一个问题:https://github.com/dotnet/standard/issues/426) – Toby
“查看类图”似乎在全新的C#.Net Framework类库项目中正常工作。您的项目是否有其他的东西,比如.Net标准类库或PCL? – svick
@svick呃,确实是.NetStandard 1.4,这会影响它吗? – Toby