c sharp 反射方法 返回ienumerable
时间: 2023-12-15 09:06:01 浏览: 72
下面是一个示例,演示如何使用反射来获取并返回一个 IEnumerable 对象:
```
using System;
using System.Collections.Generic;
using System.Reflection;
public class MyClass
{
public IEnumerable<int> MyMethod()
{
yield return 1;
yield return 2;
yield return 3;
}
}
public class Program
{
static void Main(string[] args)
{
MyClass obj = new MyClass();
Type type = obj.GetType();
MethodInfo method = type.GetMethod("MyMethod");
IEnumerable<int> result = (IEnumerable<int>)method.Invoke(obj, null);
foreach (int i in result)
{
Console.WriteLine(i);
}
}
}
```
在这个示例中,我们定义了一个 MyClass 类,其中包含一个返回 IEnumerable<int> 的 MyMethod 方法。我们使用反射来获取 MyMethod 方法,然后调用它并将结果转换为 IEnumerable<int> 类型。最后,我们遍历结果并将每个元素打印到控制台上。
阅读全文