-3

In a namespace I have an arbitrary number of classes fulfilling an interface IModel. Given the name of a class as a string, I want to instantiate that class and store the resulting object in a variable of type IModel.

As I have no experience in reflection, I did not figure out how to do it.

2
  • 2
    ... or of this or this or this or this ... Commented May 14, 2014 at 8:47
  • 1
    This question has been asked over and over. If a site suggests to check whether a question has already been asked before, please do so. Commented May 14, 2014 at 8:48

3 Answers 3

1

You don't need reflection here - use Activator

IModel model = (IModel)Activator.CreateInstance(Type.GetType(typeName));
Sign up to request clarification or add additional context in comments.

Comments

1

You could have a look at Activator.CreateInstance.

Comments

1

There are many ways to do this. I do the following:

Type t = Type.GetType("<name of class>");
IModel m = (IModel)Activator.CreateInstance(t); // assuming constructor has no parameters

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.