Could not load type 'Global'.

R

Rob T

When I was using VS2003, I was able to compile my asp.net project locally on
my machine and copy it to the production server and it would run just fine.

I've now converted to VS2005. The project compiles & runs fine locally, but
when I copy to the production machine, I get this error:

Parser Error Message: Could not load type 'Global'.
Source Error:
Line 1: <%@ Application Codebehind="Global.asax.vb" Inherits="Global" %>
Source File: D:\Inetpub\wwwroot\WiseERP\global.asax Line: 1

I thought perhaps I could change the Root Namespace to "WiseERP" (it was
blank), but then I can't get the project to compile. In the
aspx.designer.vb file It doesn't like Protected WithEvents HelpMain As
Global.Help I thinks it should be Protected WithEvents HelpMain As
Global.WiseERP.Help. I have about 500 pages on this site...and would like
to avoid having to change each one...just to find out this really isn't my
problems.

Thanks for your help!
 
M

Mark Fitzpatrick

You did mark the directory WiseERP as an application correct? If not, then
the global.asax is looking for a dll in the wrong bin file. It will be
looking for D:\inetpub\wwwroot\bin instead of the bin directory in the
WiseERP since the wwwroot is the next application up in the heirarchy.

Something else to keep in mind, if you use the Web Site project, it's not
the same as the VS 2003 web project. The Web Site project does all
compilation dynamically, which can lead to pages being compiled before
others. The Web Application Project, which was available as an add-on to VS
2005 and is now part of VS 2005 SP 1, is more akin to the VS 2003 web
project in that it compiles everything into a single dll. That could also
avoid the error you are seeing if it's a matter of timing for the
compilation.
 
R

Rob T

Sorry about my stupidity on this...

I'm assuming you're talking about the Home Directory of the IIS admin. I
hit the Remove and Create button to set this. currently the settings are:
Local Path: D:\inetpub\wwwroot\wiseerp
Application name: Default Application
Starting point: <WiseERP>
Execute permissions Scripts only
application pool: DefaultAppPool

Also I have SP1 installed and have already "Convert to Web Application" in
VS.
 
J

Juan T. Llibre

re:
Line 1: <%@ Application Codebehind="Global.asax.vb" Inherits="Global" %>
Source File: D:\Inetpub\wwwroot\WiseERP\global.asax Line: 1

VS2005, when WAP isn't installed, doesn't use "codebehind".

In ASP.NET version 2.0, you should instead use the CodeFile attribute
to specify the name of the source file, along with the Inherits attribute
to specify the fully qualified name of the class.

See:
http://msdn.microsoft.com/msdnmag/issues/06/01/ExtremeASPNET/default.aspx?loc=&fig=true#fig1

....for usage examples.

Also, in ASP.NET 2.0, if you use the code-behind model,
global.asax.vb must be moved to the App_Code directory.




Juan T. Llibre, asp.net MVP
asp.net faq : http://asp.net.do/faq/
foros de asp.net, en español : http://asp.net.do/foros/
===================================
 
R

Rob T

I thought the App_Code directory was for projects that were created in
2005...this is a conversion form 2003. ??

also, I changed the codebehind to CodeFile, I get this error:

Compiler Error Message: BC30554: 'Global' is ambiguous.
Source Error:
Line 44:
<System.Runtime.CompilerServices.CompilerGlobalScopeAttribute()> _
Line 45: Public Class global_asax
Line 46: Inherits Global.[Global]
Line 47:
Line 48: Private Shared __initialized As Boolean
Source File: C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET
Files\root\5de7b2a1\c4da5030\App_global.asax.vydatjj_.0.vb Line: 46
 
J

Juan T. Llibre

re:
I thought the App_Code directory was for projects that were created in 2005...this is a conversion
from 2003. ??

....which makes it a VS 2005 project, whether it was
originally created in 2005 or converted from 2003.

re:
also, I changed the codebehind to CodeFile, I get this error:
Compiler Error Message: BC30554: 'Global' is ambiguous.

You have a different "global" class defined somewhere else in your codebase.

In the new model, the Inherits attribute specifies
the fully qualified name of the class defined in global.asax.

Is that name, still, "global", or should it be something else ?
I bet it's something else.

Did you move global.asax.vb to the App_Code directory ?

Here's an idea for you : backup your current global.asax and its codebehind file,
delete them, and create a new global.asax: "File", "New", "File" ( or Control-N ) ,
and select "Global Application Class".

A global.asax template will be created...which you can modify to taste.

That new template's syntax will be correct,
and you'll only need to add the contents of your current global.asax file.




Juan T. Llibre, asp.net MVP
asp.net faq : http://asp.net.do/faq/
foros de asp.net, en español : http://asp.net.do/foros/
===================================
Rob T said:
I thought the App_Code directory was for projects that were created in 2005...this is a conversion
form 2003. ??

also, I changed the codebehind to CodeFile, I get this error:

Compiler Error Message: BC30554: 'Global' is ambiguous.
Source Error:
Line 44: <System.Runtime.CompilerServices.CompilerGlobalScopeAttribute()> _
Line 45: Public Class global_asax
Line 46: Inherits Global.[Global]
Line 47:
Line 48: Private Shared __initialized As Boolean
Source File: C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET
Files\root\5de7b2a1\c4da5030\App_global.asax.vydatjj_.0.vb Line: 46

Juan T. Llibre said:
re:

VS2005, when WAP isn't installed, doesn't use "codebehind".

In ASP.NET version 2.0, you should instead use the CodeFile attribute
to specify the name of the source file, along with the Inherits attribute
to specify the fully qualified name of the class.

See:
http://msdn.microsoft.com/msdnmag/issues/06/01/ExtremeASPNET/default.aspx?loc=&fig=true#fig1

...for usage examples.

Also, in ASP.NET 2.0, if you use the code-behind model,
global.asax.vb must be moved to the App_Code directory.

Juan T. Llibre, asp.net MVP
asp.net faq : http://asp.net.do/faq/
foros de asp.net, en español : http://asp.net.do/foros/
===================================
 
R

Rob T

On my dev computer, I deleted the old global.asax file, created the App_Code
folder, and created a new global.asax file in the App_Code folder. The
compile works, but the application variables defined in it don't load, so I
can't run the app still

I also tried to just create the global.asax file in the root with the same
original problem (except there is now a period in front of Global):

Parser Error Message: Could not load type '.Global_asax'.
Source Error:
Line 1: <%@ Application Codebehind="Global.asax.vb" Inherits=".Global_asax"
Language="vb" %>
Source File: D:\Inetpub\wwwroot\WiseERP\global.asax Line: 1

I'm afraid I'm going to have to cough up the $250 and call microsoft....I
have to get this project running again. Any other suggestions?


Juan T. Llibre said:
re:
I thought the App_Code directory was for projects that were created in
2005...this is a conversion from 2003. ??

...which makes it a VS 2005 project, whether it was
originally created in 2005 or converted from 2003.

re:
also, I changed the codebehind to CodeFile, I get this error:
Compiler Error Message: BC30554: 'Global' is ambiguous.

You have a different "global" class defined somewhere else in your
codebase.

In the new model, the Inherits attribute specifies
the fully qualified name of the class defined in global.asax.

Is that name, still, "global", or should it be something else ?
I bet it's something else.

Did you move global.asax.vb to the App_Code directory ?

Here's an idea for you : backup your current global.asax and its
codebehind file,
delete them, and create a new global.asax: "File", "New", "File" ( or
Control-N ) ,
and select "Global Application Class".

A global.asax template will be created...which you can modify to taste.

That new template's syntax will be correct,
and you'll only need to add the contents of your current global.asax file.




Juan T. Llibre, asp.net MVP
asp.net faq : http://asp.net.do/faq/
foros de asp.net, en español : http://asp.net.do/foros/
===================================
Rob T said:
I thought the App_Code directory was for projects that were created in
2005...this is a conversion form 2003. ??

also, I changed the codebehind to CodeFile, I get this error:

Compiler Error Message: BC30554: 'Global' is ambiguous.
Source Error:
Line 44: <System.Runtime.CompilerServices.CompilerGlobalScopeAttribute()>
_
Line 45: Public Class global_asax
Line 46: Inherits Global.[Global]
Line 47:
Line 48: Private Shared __initialized As Boolean
Source File: C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary
ASP.NET Files\root\5de7b2a1\c4da5030\App_global.asax.vydatjj_.0.vb
Line: 46

Juan T. Llibre said:
re:
Line 1: <%@ Application Codebehind="Global.asax.vb" Inherits="Global"
%>
Source File: D:\Inetpub\wwwroot\WiseERP\global.asax Line: 1

VS2005, when WAP isn't installed, doesn't use "codebehind".

In ASP.NET version 2.0, you should instead use the CodeFile attribute
to specify the name of the source file, along with the Inherits
attribute
to specify the fully qualified name of the class.

See:
http://msdn.microsoft.com/msdnmag/issues/06/01/ExtremeASPNET/default.aspx?loc=&fig=true#fig1

...for usage examples.

Also, in ASP.NET 2.0, if you use the code-behind model,
global.asax.vb must be moved to the App_Code directory.

Juan T. Llibre, asp.net MVP
asp.net faq : http://asp.net.do/faq/
foros de asp.net, en español : http://asp.net.do/foros/
===================================
When I was using VS2003, I was able to compile my asp.net project
locally on my machine and copy it to the production server and it would
run just fine.

I've now converted to VS2005. The project compiles & runs fine
locally, but when I copy to the production machine, I get this error:

Parser Error Message: Could not load type 'Global'.
Source Error:
Line 1: <%@ Application Codebehind="Global.asax.vb" Inherits="Global"
%>
Source File: D:\Inetpub\wwwroot\WiseERP\global.asax Line: 1

I thought perhaps I could change the Root Namespace to "WiseERP" (it
was blank), but then I can't get the project to compile. In the
aspx.designer.vb file It doesn't like Protected WithEvents HelpMain
As Global.Help I thinks it should be Protected WithEvents HelpMain As
Global.WiseERP.Help. I have about 500 pages on this site...and would
like to avoid having to change each one...just to find out this really
isn't my problems.

Thanks for your help!
 
J

Juan T. Llibre

re:
I also tried to just create the global.asax file in the root with the same original problem
(except there is now a period in front of Global):

Did you delete the global.asax in the App_Code directory first ?

re:
I deleted the old global.asax file, created the App_Code folder, and created a new global.asax
file in the App_Code folder.

Only the code-behind file for global.asax ( global.asax.vb )
needs to go into the App_Code folder.

Global.asax itself goes in the root of your application, as usual.

Most developers have switched from a code-behind global.asax
to an inline-code global.asax, to prevent the problems you're having.

There's nothing you can do in code-behind which you can't do inline.
In fact, the *default* model for VS 2005 is now "inline", instead of "codebehind".

Would you try that ?
( getting rid of the codebehind file and writing your global.asax events inline... )






Juan T. Llibre, asp.net MVP
asp.net faq : http://asp.net.do/faq/
foros de asp.net, en español : http://asp.net.do/foros/
===================================
Rob T said:
On my dev computer, I deleted the old global.asax file, created the App_Code folder, and created a
new global.asax file in the App_Code folder. The compile works, but the application variables
defined in it don't load, so I can't run the app still

I also tried to just create the global.asax file in the root with the same original problem
(except there is now a period in front of Global):

Parser Error Message: Could not load type '.Global_asax'.
Source Error:
Line 1: <%@ Application Codebehind="Global.asax.vb" Inherits=".Global_asax" Language="vb" %>
Source File: D:\Inetpub\wwwroot\WiseERP\global.asax Line: 1

I'm afraid I'm going to have to cough up the $250 and call microsoft....I have to get this project
running again. Any other suggestions?


Juan T. Llibre said:
re:
I thought the App_Code directory was for projects that were created in 2005...this is a
conversion from 2003. ??

...which makes it a VS 2005 project, whether it was
originally created in 2005 or converted from 2003.

re:
also, I changed the codebehind to CodeFile, I get this error:
Compiler Error Message: BC30554: 'Global' is ambiguous.

You have a different "global" class defined somewhere else in your codebase.

In the new model, the Inherits attribute specifies
the fully qualified name of the class defined in global.asax.

Is that name, still, "global", or should it be something else ?
I bet it's something else.

Did you move global.asax.vb to the App_Code directory ?

Here's an idea for you : backup your current global.asax and its codebehind file,
delete them, and create a new global.asax: "File", "New", "File" ( or Control-N ) ,
and select "Global Application Class".

A global.asax template will be created...which you can modify to taste.

That new template's syntax will be correct,
and you'll only need to add the contents of your current global.asax file.




Juan T. Llibre, asp.net MVP
asp.net faq : http://asp.net.do/faq/
foros de asp.net, en español : http://asp.net.do/foros/
===================================
Rob T said:
I thought the App_Code directory was for projects that were created in 2005...this is a
conversion form 2003. ??

also, I changed the codebehind to CodeFile, I get this error:

Compiler Error Message: BC30554: 'Global' is ambiguous.
Source Error:
Line 44: <System.Runtime.CompilerServices.CompilerGlobalScopeAttribute()> _
Line 45: Public Class global_asax
Line 46: Inherits Global.[Global]
Line 47:
Line 48: Private Shared __initialized As Boolean
Source File: C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET
Files\root\5de7b2a1\c4da5030\App_global.asax.vydatjj_.0.vb Line: 46

re:
Line 1: <%@ Application Codebehind="Global.asax.vb" Inherits="Global" %>
Source File: D:\Inetpub\wwwroot\WiseERP\global.asax Line: 1

VS2005, when WAP isn't installed, doesn't use "codebehind".

In ASP.NET version 2.0, you should instead use the CodeFile attribute
to specify the name of the source file, along with the Inherits attribute
to specify the fully qualified name of the class.

See:
http://msdn.microsoft.com/msdnmag/issues/06/01/ExtremeASPNET/default.aspx?loc=&fig=true#fig1

...for usage examples.

Also, in ASP.NET 2.0, if you use the code-behind model,
global.asax.vb must be moved to the App_Code directory.

Juan T. Llibre, asp.net MVP
asp.net faq : http://asp.net.do/faq/
foros de asp.net, en español : http://asp.net.do/foros/
===================================
When I was using VS2003, I was able to compile my asp.net project locally on my machine and
copy it to the production server and it would run just fine.

I've now converted to VS2005. The project compiles & runs fine locally, but when I copy to
the production machine, I get this error:

Parser Error Message: Could not load type 'Global'.
Source Error:
Line 1: <%@ Application Codebehind="Global.asax.vb" Inherits="Global" %>
Source File: D:\Inetpub\wwwroot\WiseERP\global.asax Line: 1

I thought perhaps I could change the Root Namespace to "WiseERP" (it was blank), but then I
can't get the project to compile. In the aspx.designer.vb file It doesn't like Protected
WithEvents HelpMain As Global.Help I thinks it should be Protected WithEvents HelpMain As
Global.WiseERP.Help. I have about 500 pages on this site...and would like to avoid having to
change each one...just to find out this really isn't my problems.

Thanks for your help!
 
R

Rob T

Well, I finally found the problem.....embarrased to post it, but it may help
someone else someday.

It help to set the web site to .net 2.0..... not 1.1.


Juan T. Llibre said:
re:
I also tried to just create the global.asax file in the root with the
same original problem (except there is now a period in front of Global):

Did you delete the global.asax in the App_Code directory first ?

re:
I deleted the old global.asax file, created the App_Code folder, and
created a new global.asax file in the App_Code folder.

Only the code-behind file for global.asax ( global.asax.vb )
needs to go into the App_Code folder.

Global.asax itself goes in the root of your application, as usual.

Most developers have switched from a code-behind global.asax
to an inline-code global.asax, to prevent the problems you're having.

There's nothing you can do in code-behind which you can't do inline.
In fact, the *default* model for VS 2005 is now "inline", instead of
"codebehind".

Would you try that ?
( getting rid of the codebehind file and writing your global.asax events
inline... )






Juan T. Llibre, asp.net MVP
asp.net faq : http://asp.net.do/faq/
foros de asp.net, en español : http://asp.net.do/foros/
===================================
Rob T said:
On my dev computer, I deleted the old global.asax file, created the
App_Code folder, and created a new global.asax file in the App_Code
folder. The compile works, but the application variables defined in it
don't load, so I can't run the app still

I also tried to just create the global.asax file in the root with the
same original problem (except there is now a period in front of Global):

Parser Error Message: Could not load type '.Global_asax'.
Source Error:
Line 1: <%@ Application Codebehind="Global.asax.vb"
Inherits=".Global_asax" Language="vb" %>
Source File: D:\Inetpub\wwwroot\WiseERP\global.asax Line: 1

I'm afraid I'm going to have to cough up the $250 and call microsoft....I
have to get this project running again. Any other suggestions?


Juan T. Llibre said:
re:
I thought the App_Code directory was for projects that were created in
2005...this is a conversion from 2003. ??

...which makes it a VS 2005 project, whether it was
originally created in 2005 or converted from 2003.

re:
also, I changed the codebehind to CodeFile, I get this error:
Compiler Error Message: BC30554: 'Global' is ambiguous.

You have a different "global" class defined somewhere else in your
codebase.

In the new model, the Inherits attribute specifies
the fully qualified name of the class defined in global.asax.

Is that name, still, "global", or should it be something else ?
I bet it's something else.

Did you move global.asax.vb to the App_Code directory ?

Here's an idea for you : backup your current global.asax and its
codebehind file,
delete them, and create a new global.asax: "File", "New", "File" ( or
Control-N ) ,
and select "Global Application Class".

A global.asax template will be created...which you can modify to taste.

That new template's syntax will be correct,
and you'll only need to add the contents of your current global.asax
file.




Juan T. Llibre, asp.net MVP
asp.net faq : http://asp.net.do/faq/
foros de asp.net, en español : http://asp.net.do/foros/
===================================
I thought the App_Code directory was for projects that were created in
2005...this is a conversion form 2003. ??

also, I changed the codebehind to CodeFile, I get this error:

Compiler Error Message: BC30554: 'Global' is ambiguous.
Source Error:
Line 44:
<System.Runtime.CompilerServices.CompilerGlobalScopeAttribute()> _
Line 45: Public Class global_asax
Line 46: Inherits Global.[Global]
Line 47:
Line 48: Private Shared __initialized As Boolean
Source File: C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary
ASP.NET Files\root\5de7b2a1\c4da5030\App_global.asax.vydatjj_.0.vb
Line: 46


re:
Line 1: <%@ Application Codebehind="Global.asax.vb"
Inherits="Global" %>
Source File: D:\Inetpub\wwwroot\WiseERP\global.asax Line: 1

VS2005, when WAP isn't installed, doesn't use "codebehind".

In ASP.NET version 2.0, you should instead use the CodeFile attribute
to specify the name of the source file, along with the Inherits
attribute
to specify the fully qualified name of the class.

See:
http://msdn.microsoft.com/msdnmag/issues/06/01/ExtremeASPNET/default.aspx?loc=&fig=true#fig1

...for usage examples.

Also, in ASP.NET 2.0, if you use the code-behind model,
global.asax.vb must be moved to the App_Code directory.

Juan T. Llibre, asp.net MVP
asp.net faq : http://asp.net.do/faq/
foros de asp.net, en español : http://asp.net.do/foros/
===================================
When I was using VS2003, I was able to compile my asp.net project
locally on my machine and copy it to the production server and it
would run just fine.

I've now converted to VS2005. The project compiles & runs fine
locally, but when I copy to the production machine, I get this error:

Parser Error Message: Could not load type 'Global'.
Source Error:
Line 1: <%@ Application Codebehind="Global.asax.vb"
Inherits="Global" %>
Source File: D:\Inetpub\wwwroot\WiseERP\global.asax Line: 1

I thought perhaps I could change the Root Namespace to "WiseERP" (it
was blank), but then I can't get the project to compile. In the
aspx.designer.vb file It doesn't like Protected WithEvents HelpMain
As Global.Help I thinks it should be Protected WithEvents HelpMain
As Global.WiseERP.Help. I have about 500 pages on this site...and
would like to avoid having to change each one...just to find out this
really isn't my problems.

Thanks for your help!
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top