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);
}
Spero che la mia domanda sia chiara. Qualcuno mi può aiutare.THX Mi è permesso solo di usare la forma di stringa di questo nome di classe per ottenere il suo tipo.Come ottenere il tipo di classe in base al nome della classe?
thx tutti. Ho risolto questa domanda da solo in questo modo.
{
Type t = Type.GetType(string.Concat(viewModel, ",", "Myspace"));
}
forse questo ti aiuto http://stackoverflow.com/questions/17045635/how-to-store-reference-to-class-property-and-access-an-instances- property-by-t – user1306322
Prova in questo modo string model = "Myspace.MyClass"; utilizza invece il nome qualificato dell'assembly – Devesh
http://stackoverflow.com/questions/648160/how-do-i-create-an-instance- from-a-string-in-c –