Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 导出给定命名空间的类名、方法名_C#_Java_Namespaces - Fatal编程技术网

C# 导出给定命名空间的类名、方法名

C# 导出给定命名空间的类名、方法名,c#,java,namespaces,C#,Java,Namespaces,如何导出c#中给定名称空间的类名、方法名,而不将其作为名称空间/代码的一部分,而优先导出txt文件。代码不应是要检索其类、方法名称的代码的一部分。仅反射: string ns = "System.Text"; var types = from asm in AppDomain.CurrentDomain.GetAssemblies() from type in asm.GetTypes() where type.Namespace == ns

如何导出c#中给定名称空间的类名、方法名,而不将其作为名称空间/代码的一部分,而优先导出txt文件。代码不应是要检索其类、方法名称的代码的一部分。

仅反射:

string ns = "System.Text";

var types = from asm in AppDomain.CurrentDomain.GetAssemblies()
            from type in asm.GetTypes()
            where type.Namespace == ns
            orderby type.Name
            select type;
foreach(var type in types)
{
    Console.WriteLine("{0} ({1})", type.Name, type.Assembly.FullName);
    // and list the methods for each type...
    foreach (var method in type.GetMethods().OrderBy(x => x.Name))
    {
        Console.WriteLine("\t{0}", method.Name);
    }
}

注意,在上面我正在查看当前应用程序域中所有加载的程序集;如果合适的话,您也可以查看单个程序集。

您能给我们一些代码看看您尝试了什么吗?不,我完全是空白。尚未开始编写代码。是否对此主题进行了任何研究?找到了一些指导使用反射、程序集的页面。但我无法理解他们。我想在这个链接中更详细的回答会有所帮助。此代码按预期工作。谢谢。关于如何将其保存为文本文件的任何线索?
使用(var output=file.CreateText()){…}
并将其写入
输出
,而不是
控制台
。您能否简要介绍如何使用单个程序集?因为此答案解释了“System.text”并与之配合使用名称空间我添加了对另一个项目的引用,并以ns给出了它的名称空间。但不起作用。我哪里出错了???@cooltoad要使用一个单独的程序集,您可以从type in typeof(SomeTypeYouKnow.assembly.GetTypes()开始使用
,其中
SomeTypeYouKnow
在您正在谈论的程序集中。它当前不工作的原因是没有加载您正在谈论的程序集。
typeof
将强制加载它。