0

我想在 C# 中动态加载类。我记得我们在 Java 中使用过Class.forname("String"),所以在谷歌搜索后我发现我们可以Activator.CreateInstance在 C# 中使用。我无法弄清楚我的程序集名称会在这里。有什么建议么 ?

object obj = Activator.CreateInstance("MyAssembly","namespaceA.SomeClassName");
4

1 回答 1

1

它只是程序集的名称。这可能与命名空间相同,但也可能不同。例如,System.Linq.Enumerable该类在System.Core程序集中 (in System.Core.dll)。

如果目标程序集是框架程序集,请查看文档。

如果它在您的控制之下,您应该知道程序集名称 - 它是项目属性的一部分。

于 2012-11-13T17:45:37.947 回答