0

以下是命名空间文件中的类

 1. File01DataTable
 2. File02DataTable 
 3. File03DataTable
 4. File04DataTable
 5. File05DataTable
 6. File06DataTable

现在我想在运行时创建实例。如果文件是 File01,那么应该创建 File01DataTable 的实例,依此类推。如果没有,就不应该有。而不是遵循哪个实例化 File01DataTable 它应该是常见的。

File01DataTable dt = (File01DataTable)tDS.Tables[filename];

我以为我可以这样做

string dataTableName = filename + "DataTable";
dataTableName dt = (dataTableName)tDS.Tables[filename];

但是很抱歉,这不是正确的方法。这里 tDS 是 Files 的实例,或者你可以忽略它。有什么建议吗?
提前致谢。

4

1 回答 1

0

您可以使用 Activator.CreateInstance(Type type)方法从其名称中获取类的实例。

例如,在我的应用程序中,我有这样的 myClass 类:

class myClass
{
    public string myField;
}

然后你可以像这样得到这个类的实例:

Type myType = Type.GetType("Your_app_namespace.class_name");  // for me FarhadApp.myClass
object obj = Activator.CreateInstance(myType);
于 2013-05-28T12:25:24.353 回答