访问其他命名空间中的类但使用相同的解决方案

时间:2018-06-14 13:55:20

标签: c# reflection

尽管有很多例子我仍然没有得到它。

我有一个带有多个项目的visualstudio解决方案

其中1个项目是控制台应用程序

namespace Test

- >程序集名称是Test

其中一个项目是一个类库

namespace Mayhem

- >程序集名称是Mayhem

类库有多个类

namespace Mayhem
{
    public class Step1
    {
       public int Id { get; set; }
       public string Title { get; set; }
    }
}

我可以从控制台应用程序访问类库。但我想通过Reflection访问类库。根据其他一些解决方案,我想出了类似的东西,但它仍然给了我一个TypeLoadException

namespace Test
{
    class Program
    {
        private static void Main(string[] args)
        {
            string[] ClassArray = new string[] { "Mayhem.Step1", "Mayhem.Step2" };

        foreach (var item in ClassArray)
        {
            Type type = Type.GetType(item, true);

            object instance = Activator.CreateInstance(type);

            PropertyInfo prop = type.GetProperty("Title");

            prop.SetValue(instance, item, null);

            Console.WriteLine(SetSegment.ToMessageSegment(instance));
        }

        }
    }
}

问题:我做错了什么?

0 个答案:

没有答案