namespace Myspace
{
public class MyClass
{
}
} //This class is in another file.
using Myspace;
static void Main(string[] args)
{
Regex regexViewModelKey = new Regex(RegularExpr.ViewModelKeyPattern);
string viewModel = regexViewModelKey.Match(match.Value).Value;
//Now, vieModel is a string, and its value is "MyClass". So, I only know the class name, this is why I ask this question.
//Now, I'm only allowed to use the string form of this class name to get its type.
//I have tyied like this, but its no use.
Type t = Type.GetType(viewModel);
//it's return a null.
//Then I tyied another method like this, but there is an exception when calling Assembly.Load
Assembly assembly = Assembly.Load("Myspace");
Type ty = assembly.GetType("Myspace" + viewModel);
}
Ich hoffe meine Frage ist klar. Kann jemand mir helfen.THX Ich bin nur erlaubt, die Zeichenkette dieses Klassennamens zu verwenden, um seinen Typ zu erhalten.Wie erhält man den Klassentyp über seinen Klassennamen?
thx jeder. Ich habe diese Frage selbst so gelöst.
vielleicht wird dies helfen http://stackoverflow.com/questions/17045635/how-to-store-reference-to-class-property-and-access-an-instances- property-by-t – user1306322
Versuchen Sie diesen Weg string model = "Mypace.MyClass"; Verwenden Sie stattdessen den Assembly-qualifizierten Namen – Devesh
http://stackoverflow.com/questions/648160/how-do-i-create-an- instance- from-a-string-in-c –