C#XML文档'&书信电报;包括>';标签没有出现在intellisense中?
我在VisualStudio中开发了一个C#类库,我一直在使用XML文档注释,主要是为了与Intellisense集成。然而,大量的注释已经变得非常混乱,所以现在我正努力使用C#XML文档'&书信电报;包括>';标签没有出现在intellisense中?,c#,xml,visual-studio,comments,intellisense,C#,Xml,Visual Studio,Comments,Intellisense,我在VisualStudio中开发了一个C#类库,我一直在使用XML文档注释,主要是为了与Intellisense集成。然而,大量的注释已经变得非常混乱,所以现在我正努力使用标记和外部XML文档来减少混乱 我的问题是,当使用标记时,Intellisense似乎不会随信息更新,不会显示我分配给某些类和方法的和标记 例如,我可以记录一个类“测试”,如图所示: /// <include file="docs.xml" path='extradoc/class[@name="Test"]/*' /
标记和外部XML文档来减少混乱
我的问题是,当使用
标记时,Intellisense似乎不会随信息更新,不会显示我分配给某些类和方法的
和
标记
例如,我可以记录一个类“测试”,如图所示:
/// <include file="docs.xml" path='extradoc/class[@name="Test"]/*' />
class Test { string foo = "bar"; }
//
类测试{string foo=“bar”;}
并拥有docs.xml:
<?xml version="1.0" encoding="utf-8" ?>
<extradoc>
<class name="Test">
<summary>
Contains some Foo.
</summary>
</class>
</extradoc>
包含一些Foo。
生成后,输出XML将正确填充:
<?xml version="1.0"?>
<doc>
<assembly>
<name>Example Program</name>
</assembly>
<members>
<member name="T:Example_Program.Program.Test">
<summary>
Contains some Foo.
</summary>
</member>
</members>
</doc>
示例程序
包含一些Foo。
唯一的问题是,尽管我可能会尝试,但在附加代码时,此文档不会出现在intellisense框中。是否缺少某些Visual Studio配置设置?我浏览了msn文档,但没有结果
我的问题是,当使用标签Intellisense时
不使用信息更新,不显示任何和
我已经分配给我的一些类和方法的标记
1.避免您的问题无法在当前项目A的Intellisense中查看摘要。
您可以从中获得帮助,这项技术用于提供更好的阅读体验。因此,假设您在当前的prijectA
中有Test
类,当您在VS代码编辑器中看到内容时,您将看到如下内容:
您不会再看到项目A中的丰富注释,这是预期的行为,因为它们已被移动到docs.xml
2.如果您是指在创建新项目B(或将程序集共享给其他开发人员)时,Intellisense无法识别您的测试类。
两个可能的原因:
1.项目A的输出xx.dll和xx.xml不在同一文件夹中,因此当您在新项目中引用该xx.dll时,Intellisense不会显示文档注释
2.我猜您的docs.xml
文件有问题。(我在docs.xml中找不到任何官方文件表明该技术支持用户定义的节点,如extradoc
和class
,我使用了这两个节点,Intellisense没有工作,在将它们更改为普通docs
和成员
后,它现在可以工作了)
尝试使用docs.xml
和include
,方法如下:
<?xml version="1.0" encoding="utf-8" ?>
<docs>
<members name="MyTests">
<Test>
<summary>
This class is public, but do nothing
</summary>
<remarks>
Just write something here to indicate this is remarks.
</remarks>
</Test>
</members>
</docs>
这门课是公开的,但什么也不做
在这里写点东西,表明这是评论。
及
//
公共类测试{}
我建议你使用一个公共类来测试。。。之后,创建一个新项目并引用该xx.dll,当调用Test
类时,您可以看到摘要:
如果我们选择F12,我们可以看到详细的评论:
希望有帮助:)不确定这是否有帮助-但通常情况下,重新启动VS和删除用户选项文件在过去对我有帮助,尽管在我的情况下这只是一般的intellisense。对
有点困惑,在添加代码时,此文档不会出现在intellisense框中,您的意思是,当您在另一个项目中引用此程序集时,该项目中的intellisense无法识别您程序集的文档吗?预期的行为是,您将不再在项目A中看到丰富的注释,因为它们已移动到docs.xml。这是一个相当愚蠢的设计,希望很快就会改变:
/// <include file="docs.xml" path='docs/members[@name="MyTests"]/Test/*' />
public class Test { }