Reflection in ASP.NET - Strange behavior?

  • Thread starter Thread starter Justice Gray
  • Start date Start date
J

Justice Gray

I have the following code encapsulated in an ascx page (user control):

namespace MyCompany.Web.UserControls
{
[most of my code]
string webform_namespace = this.GetType().Namespace.ToString();
}

Now, when I run this and output the string to the trace information, I
get the following value:

"ASP"

However, I want the value to be "MyCompany.Web.UserControls", which is
the namespace where I've defined it...pretty much the way I'd expect
this to show up if I was running this as a Windows form.

Is there any way to do this? Why is the namespace showing up as
"ASP"? Is this a default value? If so, is there any way to override
this?

Thanks,
-Justice
 
Justice,

You need to check the Namespace of the base type. Change your code to this:

string webform_namespace = this.GetType().BaseType.Namespace.ToString();


Jim Cheshire [MSFT]
Developer Support
ASP.NET
(e-mail address removed)

This post is provided as-is with no warranties and confers no rights.

--------------------
 
Back
Top