How do i get an Orcas ASP.NET project to work with a web server that only supports .NET 2.0? At home i can play around with 3.5 features just fine using the built in web server, but i've tried to upload my projects to a playground server on the internet
to test it live(I'm using godaddy's basic hosting). Problem is GoDaddy only supports .NET 2.0 and most of my projects refuse to run. I've selected .NET 2.0 within orcas, is there something else i'm supposed to do?
If not, does anybody know a web host that supports .net 3.5?
Here's an update. I've been playing around with Orcas and VWD 2005 and i beleive i know the problem, i'm not sure how to fix it.
When i attempt to make a web application project, or a website project that is just ASP.NET (no futures/ajax) in Orcas with the .NET 2.0 options, i have no problem uploading and running it on a .NET 2.0 platform. When i select ASP.NET AJAX/Futures project,
(or try and incorporate an AJAX control to my normal ASP.NET project), orcas will add references to assemblies that require .NET 3.5. However if i try the same thing under VWD 2005 i have no problem and VWD adds references to the .NET 2.0 versions of the
AJAX/Futures release. Does anyone know how to fix this problem?
When i attempt to generate a normal ASP.NET Ajax/Futures project using orcas, and i upload it, this is the error i get
Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.
Parser Error Message: Child nodes not allowed.
Source Error:
Line 106: <compiler language="c#;cs;csharp" extension=".cs"
Line 107: type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
Line 108: <providerOption name="CompilerVersion" value="v3.5"/>
Line 109: </compiler>
Line 110: <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" compilerOptions="/optioninfer+"
If i add an AJAX/Futures control to a normal Orcas project this is the error i get
Configuration Error
Description:
An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.
Parser Error Message: Could not load file or assembly 'System.Web.Extensions, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.
Source Error:
Line 21: <compilation debug="false"> Line 22: <assemblies> Line 23: <add assembly="System.Web.Extensions, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> Line 24: <add assembly="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/> Line 25: <add assembly="System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/></assemblies></compilation>
Does anyone know how to fix orcas so that it properly references the .NET 2.0 controls when i select that compilation option for AJAX/Futures?
Your getting an error because the website is configured to use .NET Framework 3.5. You can change the website to use .NET Framework 2.0 by doing the following:
1. Open the website in Visual Studio Orcas
2. Left click the website root node
3. Right click the website node and select the "Property Pages" menu item
4. Select "Build" from the list of pages on the left of the dialog
5. Change the Target Framework to .NET Framework 2.0
Making this change will disable features that require .NET Framework 3.0 or .NET Framework 3.5 but should fix your problem.
I did select the .NET 2.0 framework, but orcas still compiles it as the 3.5. I believe the problem is when i attempt to create an ASP.NET AJAX or Futures AJAX project. I can create a normal .NET 2.0 project if i select only a plain ASP.NET page, however
if i tell orcas to create a 2.0 AJAX or AJAX Futures page then it still thinks it's compiling a 3.5.
The orcas settings also seem to be messing up my normal visual web developer express. When i attempt to utilize AJAX or the Futures Kit, Visual Web Developer Express adds the references for the newer 3.5 DLL's, i have to go in and manually change the versions.
Looks like "ASP.NET Futures AJAX Web Site" and "ASP.NET Futures Web Site" are both v3.5 applications
regardless of your target framework settings. This is a bug and we'll look into getting it fixed.
To create a v2.0-compatible application, I suggest starting with a vanilla "ASP.NET Web Site" under the ".NET Framwork 2.0" target setting. The addition of the appropriate ASP.NET AJAX 1.0 features will need to be achieved by manually editing the web.config.
Unfortunately we do not ship default project templates for "ASP.NET 2.0 + AJAX 1.0" for Visual Studio "Orcas". They only show up in VS 2005.
Additionally, I would double-check to make sure the toolbox entries such as "ScriptManager" refer to the AJAX 1.0 (.NET 2.0) rather than the AJAX 2.0 (.NET 3.5) versions of the controls. You can do this by right-clicking the toolbox and selecting "Choose
Items..."
Hello, I tried to add AJAX Extensions of different version onto the Toolbox but to no avail. Even though I used Browse button to point the previous version DLL's, the selected items appeared of version 2.0.0.0 in the Choose Items... list regardless the file
I had selected. There was no means to change that. It seems like the Toolbox is tied up to the 3.5 framework version in some hard manner and takes no regard to the selected Target Framework of the project. Thanks
I think it's a bug. I switched over and am using Visual Web Developer 2005, but it had that problem too, when i would add the old extensions they would think it's the 3.5 framework version. The way i got around this was making sure that the register assembly
tag at the top of the asp file matched the old version (like this)
Well this didn't work in Orcas anyways. I changed all the explicit references to Version=1.0.61025.0 in the config and the source files. And the compiled website still asks for Sytem.Web.Extentions 2.0.0.0 when uploaded to a server if server only supports
Framework 2.0. Particularly I receive the following error message when attempting to open the uploaded webpage.
Parser Error Message: Could not load file or assembly 'System.Web.Extensions, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The located assembly's manifest definition does not match the assembly
reference. (Exception from HRESULT: 0x80131040)
Source Error:
Line 1: <%@ page language="C#" autoeventwireup="true" inherits="_Default, App_Web_vkecccda" %>
Line 2:
Line 3: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
I think the message makes evidence that some reference is yet kept in the output DLL itself. I tried many ways to get rid of that but failed.
Well, I've found a hack/solution for this.... I've been challenged with the same problem as you for a week or so now having Orcas Beta installed and getting your error message. I have been trying to deploy to GoDaddy's "cheap" hosting plan server that does
not have the 3.5 framework installed.
I finally decided to see WTH was going on. Yes somehow no matter what you do, it's going to compile and want to reference the 2.0 System.Web.Extensions assembly... So after battling this I gave up and decided to approach this differently...
If you look at ILDASM on the compiled assembly(ies) that are utilizing a ScriptManager control, you'll see the following towards the very top of the Assembly Manifest:
.assembly extern System.Web.Extensions
{
.publickeytoken = (31 BF 38 56 AD 36 4E 35 ) // 1.8V.6N5
.ver 2:0:0:0
}
I tried everything mentioned above and a few other things and , nothing in the world I could do to get rid of that.
So..... I decided to just go ahead and modify the IL code directly. I ran ILDASM and opened up my compiled page dll named "App_Web_s0r4rx-e.dll". I figured it'd be easy enough to modify the IL since it's just a reference I want to change... I wouldn't have
to get into the actual true IL compiled C# code I wrote. Turns out I was right.
All I did was change the above segment to the following below, using the best text editor program around... NOTEPAD :)
.assembly extern System.Web.Extensions
{
.publickeytoken = (31 BF 38 56 AD 36 4E 35 ) // 1.8V.6N5
.ver 1:0:61025:0 }
Note, I just changed the version number. Then, I saved my IL file, deleted the original dll file and then ran "ILASM /dll App_web_s0r4rx-e.il" on my IL file and wha la, my updated "App_Web_s0r4rx-e.dll" was created.
I deployed this code to my GoDaddy account and it ran! No more error message!
So until a new version of Orcas is released, this is the roundabout hack way to do things.. Might be worth writing a little command line utility search the bin directory and recompile any dlls referencing the old System.Web.Extensions dll.
GDAR
Member
28 Points
35 Posts
Using Orcas to Compile to and ASP .NET 2.0?
May 24, 2007 05:31 PM|LINK
How do i get an Orcas ASP.NET project to work with a web server that only supports .NET 2.0? At home i can play around with 3.5 features just fine using the built in web server, but i've tried to upload my projects to a playground server on the internet to test it live(I'm using godaddy's basic hosting). Problem is GoDaddy only supports .NET 2.0 and most of my projects refuse to run. I've selected .NET 2.0 within orcas, is there something else i'm supposed to do?
If not, does anybody know a web host that supports .net 3.5?
Thanks
GDAR
Member
28 Points
35 Posts
Re: Using Orcas to Compile to and ASP .NET 2.0?
May 24, 2007 08:32 PM|LINK
Here's an update. I've been playing around with Orcas and VWD 2005 and i beleive i know the problem, i'm not sure how to fix it.
When i attempt to make a web application project, or a website project that is just ASP.NET (no futures/ajax) in Orcas with the .NET 2.0 options, i have no problem uploading and running it on a .NET 2.0 platform. When i select ASP.NET AJAX/Futures project, (or try and incorporate an AJAX control to my normal ASP.NET project), orcas will add references to assemblies that require .NET 3.5. However if i try the same thing under VWD 2005 i have no problem and VWD adds references to the .NET 2.0 versions of the AJAX/Futures release. Does anyone know how to fix this problem?
When i attempt to generate a normal ASP.NET Ajax/Futures project using orcas, and i upload it, this is the error i get
If i add an AJAX/Futures control to a normal Orcas project this is the error i get
Does anyone know how to fix orcas so that it properly references the .NET 2.0 controls when i select that compilation option for AJAX/Futures?
Thanks
jbresler
Participant
906 Points
171 Posts
Microsoft
Re: Using Orcas to Compile to and ASP .NET 2.0?
May 30, 2007 05:38 PM|LINK
Your getting an error because the website is configured to use .NET Framework 3.5. You can change the website to use .NET Framework 2.0 by doing the following:
1. Open the website in Visual Studio Orcas
2. Left click the website root node
3. Right click the website node and select the "Property Pages" menu item
4. Select "Build" from the list of pages on the left of the dialog
5. Change the Target Framework to .NET Framework 2.0
Making this change will disable features that require .NET Framework 3.0 or .NET Framework 3.5 but should fix your problem.
GDAR
Member
28 Points
35 Posts
Re: Using Orcas to Compile to and ASP .NET 2.0?
May 30, 2007 06:16 PM|LINK
I did select the .NET 2.0 framework, but orcas still compiles it as the 3.5. I believe the problem is when i attempt to create an ASP.NET AJAX or Futures AJAX project. I can create a normal .NET 2.0 project if i select only a plain ASP.NET page, however if i tell orcas to create a 2.0 AJAX or AJAX Futures page then it still thinks it's compiling a 3.5.
The orcas settings also seem to be messing up my normal visual web developer express. When i attempt to utilize AJAX or the Futures Kit, Visual Web Developer Express adds the references for the newer 3.5 DLL's, i have to go in and manually change the versions.
Is this a bug?
Jeff.aspx
Participant
1412 Points
253 Posts
Microsoft
Re: Using Orcas to Compile to and ASP .NET 2.0?
May 31, 2007 03:59 AM|LINK
Looks like "ASP.NET Futures AJAX Web Site" and "ASP.NET Futures Web Site" are both v3.5 applications regardless of your target framework settings. This is a bug and we'll look into getting it fixed.
To create a v2.0-compatible application, I suggest starting with a vanilla "ASP.NET Web Site" under the ".NET Framwork 2.0" target setting. The addition of the appropriate ASP.NET AJAX 1.0 features will need to be achieved by manually editing the web.config. Unfortunately we do not ship default project templates for "ASP.NET 2.0 + AJAX 1.0" for Visual Studio "Orcas". They only show up in VS 2005.
Additionally, I would double-check to make sure the toolbox entries such as "ScriptManager" refer to the AJAX 1.0 (.NET 2.0) rather than the AJAX 2.0 (.NET 3.5) versions of the controls. You can do this by right-clicking the toolbox and selecting "Choose Items..."
HTH,
Program Manager
ASP.net
GDAR
Member
28 Points
35 Posts
Re: Using Orcas to Compile to and ASP .NET 2.0?
May 31, 2007 06:35 AM|LINK
Thanks for clearing that up.
serrzh
Member
4 Points
2 Posts
Re: Using Orcas to Compile to and ASP .NET 2.0?
Jun 08, 2007 09:11 AM|LINK
Hello, I tried to add AJAX Extensions of different version onto the Toolbox but to no avail. Even though I used Browse button to point the previous version DLL's, the selected items appeared of version 2.0.0.0 in the Choose Items... list regardless the file I had selected. There was no means to change that. It seems like the Toolbox is tied up to the 3.5 framework version in some hard manner and takes no regard to the selected Target Framework of the project. Thanks
GDAR
Member
28 Points
35 Posts
Re: Using Orcas to Compile to and ASP .NET 2.0?
Jun 08, 2007 02:04 PM|LINK
I think it's a bug. I switched over and am using Visual Web Developer 2005, but it had that problem too, when i would add the old extensions they would think it's the 3.5 framework version. The way i got around this was making sure that the register assembly tag at the top of the asp file matched the old version (like this)
<%@ Register Assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
Namespace="System.Web.UI" TagPrefix="asp" %>
and making sure that in the web.config was this
<add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
It may work in orcas too but i didn't give it a try yet.
serrzh
Member
4 Points
2 Posts
Re: Using Orcas to Compile to and ASP .NET 2.0?
Jun 08, 2007 04:54 PM|LINK
Well this didn't work in Orcas anyways. I changed all the explicit references to Version=1.0.61025.0 in the config and the source files. And the compiled website still asks for Sytem.Web.Extentions 2.0.0.0 when uploaded to a server if server only supports Framework 2.0. Particularly I receive the following error message when attempting to open the uploaded webpage.
Parser Error Message: Could not load file or assembly 'System.Web.Extensions, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
Source Error:
I think the message makes evidence that some reference is yet kept in the output DLL itself. I tried many ways to get rid of that but failed.
davearlin
Member
16 Points
3 Posts
Re: Using Orcas to Compile to and ASP .NET 2.0?
Jun 11, 2007 06:07 AM|LINK
Well, I've found a hack/solution for this.... I've been challenged with the same problem as you for a week or so now having Orcas Beta installed and getting your error message. I have been trying to deploy to GoDaddy's "cheap" hosting plan server that does not have the 3.5 framework installed.
I finally decided to see WTH was going on. Yes somehow no matter what you do, it's going to compile and want to reference the 2.0 System.Web.Extensions assembly... So after battling this I gave up and decided to approach this differently...
If you look at ILDASM on the compiled assembly(ies) that are utilizing a ScriptManager control, you'll see the following towards the very top of the Assembly Manifest:
.assembly extern System.Web.Extensions
{
.publickeytoken = (31 BF 38 56 AD 36 4E 35 ) // 1.8V.6N5
.ver 2:0:0:0
}
I tried everything mentioned above and a few other things and , nothing in the world I could do to get rid of that.
So..... I decided to just go ahead and modify the IL code directly. I ran ILDASM and opened up my compiled page dll named "App_Web_s0r4rx-e.dll". I figured it'd be easy enough to modify the IL since it's just a reference I want to change... I wouldn't have to get into the actual true IL compiled C# code I wrote. Turns out I was right.
All I did was change the above segment to the following below, using the best text editor program around... NOTEPAD :)
.assembly extern System.Web.Extensions
{
.publickeytoken = (31 BF 38 56 AD 36 4E 35 ) // 1.8V.6N5
.ver 1:0:61025:0
}
Note, I just changed the version number. Then, I saved my IL file, deleted the original dll file and then ran "ILASM /dll App_web_s0r4rx-e.il" on my IL file and wha la, my updated "App_Web_s0r4rx-e.dll" was created.
I deployed this code to my GoDaddy account and it ran! No more error message!
So until a new version of Orcas is released, this is the roundabout hack way to do things.. Might be worth writing a little command line utility search the bin directory and recompile any dlls referencing the old System.Web.Extensions dll.
Hope this works out for you!
- Dave