我正在尝试使用“objectName”命名Person
对象,如下所示,但没有成功,
任何帮助?怎么做?
string objectNameString = "objectName";
Person objectNameString = new Person();
我尝试从多个用户输入创建一个Person列表,名称在列表中必须是唯一的。
答案 0 :(得分:0)
以下内容应使用Person
中的字符串创建objectNameString
的新实例。
string objectNameString = "Person";
var person = System.Reflection.Assembly.GetExecutingAssembly().CreateInstance(objectNameString );
答案 1 :(得分:0)
如果您想使用objectNameString
变量的值,使用Dictionary
或ExpandoObject
是您可以获得的最接近的值:
Dictionary<string, object> someObject = new Dictionary<string, object>();
someObject[objectNameString] = new Person();
Person p = (Person)someObject[objectNameString];
或者,如果您只添加Person
,则字典可能看起来像Dictionary<string, Person>
。
答案 2 :(得分:0)
我想我得到了你的问题。你有一个字符串(例如来自用户输入)。并且您想要创建一个具有前面提到的字符串的变量名称的Person。
Dictionary<string, Person> someObject = new Dictionary<string, Person>();
string objectNameString = "objectName";
someObject[objectNameString] = new Person();