vb.net - 运行时动态转换 vb.net

标签 vb.net casting dynamictype

我想知道这是否可以,假设我的项目中的某个地方有一个类,在某些时候我需要将一个对象转换为此类类型或其他类型,但我只能在运行时知道这一点,所以在设计时我可以做这样的事情吗?

Dim obj = 'will be assigned something of some type.
Dim typeObj As Type = Type.GetType("xxxx.Foo")
Dim fooVar As Foo = CTypeDynamic(obj, typeObj)

这会像我们所说的那样工作吗:

Dim x As String = "3"
Dim n As Integer = CType(x, Integer) 

最佳答案

您的意思是在运行时创建类的实例吗?

    Dim obj As String = "AssemblyName.YourClassName"
    Dim typeObj As Type = Type.GetType(obj)
    Dim fooVar = Activator.CreateInstance(typeObj)

关于vb.net - 运行时动态转换 vb.net,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12411175/

相关文章:

Java:当泛型为 <T extends Parent> 时,在父类中转换为泛型类型是否安全?

c# - 我正在尝试将对象转换为动态类型,但转换失败并出现 RunTimeBinder 异常

ios - Xamarin IOs,传递给 textStyle 参数的 UIFontMetrics.GetMetrics 方法的字符串值是什么?

mysql - 组合框未填充 mysql 数据

java - 在java中将字符数组转换为对象数组?是否可以?

types - F# 错误 : Wrong type expected?

objective-c - Swift - 获取对具有相同名称但不同参数的函数的引用

vb.net - 将值舍入为 5 或 9

vb.net - 如何在 Windows 关机时正常关闭控制台应用程序

vb.net - Visual Basic 循环并一次显示一行