【发布时间】:2019-06-10 17:28:18
【问题描述】:
我在 .xml 文件中保存了如下所示的文档:
<?xml version="1.0"?>
<doc>
<assembly>
<name>ClassLibrary2</name>
</assembly>
<members>
<member name="T:ClassLibrary2.Class1">
<summary>
Class1 Dummy documentation
</summary>
</member>
<member name="M:ClassLibrary2.Class1.Func1">
<summary>
Func1 Dummy documentation
</summary>
</member>
</members>
</doc>
而且我不会将文档导入到如下所示的 .cs 文件中:
namespace ClassLibrary2
{
public class Class1
{
void Func1()
{
}
}
}
这样在我导入后我的文件将如下所示:
namespace ClassLibrary2
{
/// <summary>
/// Class1 Dummy documentation
/// </summary>
public class Class1
{
/// <summary>
/// Func1 Dummy documentation
/// </summary>
void Func1()
{
}
}
}
如何以编程方式执行此操作?
我应该使用CodeDOM 还是Visual Studio?或Roslyn 或其他工具?
任何帮助将不胜感激,
提前致谢。
【问题讨论】:
-
有趣...过去是从 .cs 文件中剥离出来的吗?我只看到了从 .cs 文件本身生成的 XML。
-
这个问题可能会导致xy problem
-
@BrootsWaymb 确实,文档是从 .CS 文件中获取的,但它被意外删除了,并且保留在 XML 文件中,现在需要返回。这是一个非常大量的文档。
-
通常 xml 文档是从 .cs 文件创建的。你也有dll还是只有xml文件?如果你有 dll,你可以使用反编译器来获取代码。例如 ILSPY
-
我很惊讶这个问题没有被问过一百次。另一个例子:*.com/questions/13333211/… 用例:一家公司拥有私有软件,将 cmets 导出为 XML,通过 SandCastle 发布文档。无法访问源代码的人希望帮助修复文档。为了避免复制/粘贴到代码源的两步过程,最好从 XML 重新生成内联代码 cmets。这个线程上的一个答案是不完整的。找到/创建一个实际的解决方案会很好。
标签: c# visual-studio documentation