1

Sorry if the question sounds confusing. My problem is that I am using the following:

var packageType = Type.GetType(className); 

I have checked very carefully that className is the fully qualified name of a type. I checked the className variable many times. But still when this is executed it gives packageType as null !

I know my class name is Product. Is there a way that I can get a string representation of the name so I can check to see if it compares exactly with the className string I am passing to the above.

3 Answers 3

3

You may need to provide the assembly qualified name. Note:

Type.GetType

Parameters: typeName

Type: System.String

The assembly-qualified name of the type to get. See AssemblyQualifiedName. If the type is in the currently executing assembly or in Mscorlib.dll, it is sufficient to supply the type name qualified by its namespace.

For example, if I am trying to get a type defined outside of the currently executing assembly, I could use Type.GetType as following:

var name = "CommonLibrary.ICommand, CommonLibrary, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"; var type = Type.GetType(name); 

If inside the executing assembly, I only need to qualify it via the namespace

var type = Type.GetType("CommonLibrary.ICommand"); 
Sign up to request clarification or add additional context in comments.

Comments

3

Yes: typeof(Product).FullName

Comments

-1

You need to call this using an object e.g.

string str = ""; string type = str.GetType().ToString(); 

This will give you "System.String" in "type" variable

1 Comment

That's only if you want to get the type of an object. What if there's no object?

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.