如何从字符串返回EntityBase2?

时间:2013-03-27 14:57:11

标签: orm vb.net-2010 llblgenpro

我有一个用我的实体名称填充的ListBox,即A1AllocationHelp1Entity

在选择时,我需要传递该字符串名称以获取EntityBase2类型。

我可以使用反射来获取它:

Public Function CreateEntity(ByVal entityName As String) As EntityBase2
    Dim myAssembly = Assembly.LoadFrom(DALFileName)
    Dim assemblyName = Split(dynamicAssembly.FullName, ",")(0)
    Dim myEntityName = assemblyName & ".EntityClasses." & entityName
    Dim handle = Activator.CreateInstance(assemblyName, myEntityName)
    Dim entity = CType(handle.Unwrap(), EntityBase2)
    Return entity
End Function

但是如果我有llblgen生成的类型,我希望能够以某种方式实例化它而不需要求助于反射。

我有什么方法可以做到吗?

1 个答案:

答案 0 :(得分:0)

所有的反思代码都可以用一行代替

Return GeneralEntityFactory.Create( _
    CType(System.Enum.Parse(GetType(EntityType), entityName), EntityType))

返回相同类型,是我正在寻找的答案。