gpt4 book ai didi

c# - 从字符串变量中的名称创建类的对象实例

转载 作者:IT王子 更新时间:2023-10-29 04:40:55 25 4
gpt4 key购买 nike

我不知道这是否可行,但我想知道它是否可行,如果可行,它是如何工作的。所以这是我的问题:

我有 2-3 个自己的自定义模型类。例如,客户员工产品。我在字符串中也有一个类名。根据类名,我想创建一个实例并将其返回到一个 View 。我怎样才能做到这一点?

我知道一个选项是 if/else 语句,但我想要一种更好的动态方式。

最佳答案

在字符串中具有类名不足以创建其实例。事实上,您需要包括类名在内的完整命名空间来创建对象。

假设您有以下内容:

string className = "MyClass";
string namespaceName = "MyNamespace.MyInternalNamespace";

然后,您可以使用以下任一技术创建该类的实例,即 MyNamespace.MyInternalNamespace.MyClass 类的对象:

var myObj = Activator.CreateInstance(namespaceName, className);

或者这个:

var myObj = Activator.CreateInstance(Type.GetType(namespaceName + "." + className));

希望对您有所帮助,如果没有请告诉我。

关于c# - 从字符串变量中的名称创建类的对象实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15449800/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com