如何从ASP.NET Core 1.1项目生成类图 [英] How to generate class diagram from asp.net core 1.1 project
问题描述
classdiagram.cd文件手动创建:
classdiagram.cd file created manually with this :
<?xml version="1.0" encoding="utf-8"?>
<ClassDiagram MajorVersion="1" MinorVersion="1">
<Font Name="Segoe UI" Size="9" />
</ClassDiagram>
在vs 2017社区中
in vs 2017 community
Microsoft.CSharp.DesignTime.targets文件 (C:\ Program Files(x86)\ Microsoft Visual Studio \ 2017 \ Community \ MSBuild \ Microsoft \ VisualStudio \ Managed \ Microsoft.CSharp.DesignTime.targets):
Microsoft.CSharp.DesignTime.targets file (C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\Microsoft\VisualStudio\Managed\Microsoft.CSharp.DesignTime.targets):
<!--
This file contains Visual Studio and designer-related properties and items for C# projects.
-->
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="Microsoft.Managed.DesignTime.targets" />
<!-- Properties -->
<PropertyGroup>
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
<AppDesignerFolder Condition="'$(AppDesignerFolder)' == ''">Properties</AppDesignerFolder>
<AppDesignerFolderContentsVisibleOnlyInShowAllFiles Condition="'$(AppDesignerFolderContentsVisibleOnlyInShowAllFiles)' == ''">false</AppDesignerFolderContentsVisibleOnlyInShowAllFiles>
<LanguageServiceName Condition="'$(LanguageServiceName)' == ''">C#</LanguageServiceName>
<LanguageServiceId Condition="'$(LanguageServiceId)'==''">{694DD9B6-B865-4C5B-AD85-86356E9C88DC}</LanguageServiceId>
<TemplateLanguage Condition="'$(TemplateLanguage)' == ''">CSharp</TemplateLanguage>
<AddItemTemplatesGuid Condition="'$(AddItemTemplatesGuid)' == ''">{FAE04EC0-301F-11d3-BF4B-00C04F79EFBC}</AddItemTemplatesGuid>
<!-- Turn off rules and capabilities that are defined in MSBuild so that we can import our own below -->
<DefineCSharpItemSchemas>false</DefineCSharpItemSchemas>
</PropertyGroup>
<ItemGroup>
<PropertyPageSchema Include="$(ManagedXamlResourcesDirectory)CSharp.ProjectItemsSchema.xaml;"/>
<ProjectCapability Include="CSharp;Managed;ClassDesigner"/>
</ItemGroup>
<!-- Targets -->
<!-- Returns Csc command-line arguments for the language service -->
<Target Name="CompileDesignTime"
Returns="@(_CompilerCommandLineArgs)"
DependsOnTargets="_CheckCompileDesignTimePrerequisite;Compile"
Condition="'$(IsCrossTargetingBuild)' != 'true'">
<ItemGroup>
<_CompilerCommandLineArgs Include="@(CscCommandLineArgs)"/>
</ItemGroup>
</Target>
</Project>
推荐答案
有一个错误中的一个文件,以防止您在.Net Core项目中使用类图.您现在可以应用手动修复.打开文件C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\Microsoft\VisualStudio\Managed\Microsoft.CSharp.DesignTime.targets
(或任何安装它的位置)并更改此行:
There's a bug in one of the files that prevents you using class diagrams in .Net Core projects. You can apply a manual fix for now. Open the file C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\Microsoft\VisualStudio\Managed\Microsoft.CSharp.DesignTime.targets
(or wherever you have installed it) and change this line:
<ProjectCapability Include="CSharp;Managed"/>
对此:
<ProjectCapability Include="CSharp;Managed;ClassDesigner"/>
现在,重新启动Visual Studio,然后重试.
Now restart Visual Studio and try again.
这篇关于如何从ASP.NET Core 1.1项目生成类图的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!