David Megnin
asked on
AJAX Control Toolkit - Could not load file or assembly System.Web.Extension
I just installed the AJAX Control Toolkit and am trying to get a simple <cc1:ConfirmButtonExtender > to work on a page with nothing but a textbox, a button and a label per the video on www.asp.net/ajax.
I get a complile error:
Could not load file or assembly 'System.Web.Extension, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad3 64e35' or one of its dependencies. The system cannot find the file specified.
Here it the default.aspx page:
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>
<%@ register assembly="AjaxControlToolk it" namespace="AjaxControlTool kit" tagprefix="cc1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<br />
</div>
<asp:Button ID="Button1" runat="server" Text="Button" />
<cc1:ConfirmButtonExtender ID="Button1_ConfirmButtonE xtender" runat="server"
ConfirmText="Are you sure?" TargetControlID="Button1">
</cc1:ConfirmButtonExtende r>
<br /><br />
<asp:TextBox ID="TextBox1" runat="server"></asp:TextB ox><br /><br />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</form>
</body>
</html>
...and my web.config which includes the lines:
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Exten sions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad3 64e35"/>
<add tagPrefix="asp" namespace="System.Web.UI.W ebControls " assembly="System.Web.Exten sion, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad3 64e35"/>
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Exten sions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad3 64e35"/>
<add namespace="AjaxControlTool kit" assembly="AjaxControlToolk it" tagPrefix="cc1"/>
I read one post that said that the assembly was causing his problem so I tried both:
<add namespace="AjaxControlTool kit" assembly="AjaxControlToolk it" tagPrefix="cc1"/> and
<add namespace="AjaxControlTool kit" tagPrefix="cc1"/>
I have:
Installed Visual Studio 2008 on my PC
Installed .NET Framework 3.5 on the Web Server
Installed AJAX Control Toolkit on my PC
Added a reference in the Project to System.Web.Extension
Gone into .NET Framework 2.0 Configureation, Runtime Security Policy and adjusted the security level for Local Intranet to Full Trust.
What could still be the problem?
I get a complile error:
Could not load file or assembly 'System.Web.Extension, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad3
Here it the default.aspx page:
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb"
<%@ register assembly="AjaxControlToolk
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<br />
</div>
<asp:Button ID="Button1" runat="server" Text="Button" />
<cc1:ConfirmButtonExtender
ConfirmText="Are you sure?" TargetControlID="Button1">
</cc1:ConfirmButtonExtende
<br /><br />
<asp:TextBox ID="TextBox1" runat="server"></asp:TextB
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</form>
</body>
</html>
...and my web.config which includes the lines:
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Exten
<add tagPrefix="asp" namespace="System.Web.UI.W
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Exten
<add namespace="AjaxControlTool
I read one post that said that the assembly was causing his problem so I tried both:
<add namespace="AjaxControlTool
<add namespace="AjaxControlTool
I have:
Installed Visual Studio 2008 on my PC
Installed .NET Framework 3.5 on the Web Server
Installed AJAX Control Toolkit on my PC
Added a reference in the Project to System.Web.Extension
Gone into .NET Framework 2.0 Configureation, Runtime Security Policy and adjusted the security level for Local Intranet to Full Trust.
What could still be the problem?
<?xml version="1.0"?>
<!--
Note: As an alternative to hand editing this file you can use the
web admin tool to configure settings for your application. Use
the Website->Asp.Net Configuration option in Visual Studio.
A full list of settings and comments can be found in
machine.config.comments usually located in
\Windows\Microsoft.Net\Framework\v2.x\Config
-->
<configuration>
<configSections>
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
<sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="Everywhere"/>
<section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
<section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
<section name="roleService" type="System.Web.Configuration.ScriptingRoleServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
</sectionGroup>
</sectionGroup>
</sectionGroup>
</configSections>
<appSettings/>
<connectionStrings/>
<system.web>
<!--
Set compilation debug="true" to insert debugging
symbols into the compiled page. Because this
affects performance, set this value to true only
during development.
Visual Basic options:
Set strict="true" to disallow all data type conversions
where data loss can occur.
Set explicit="true" to force declaration of all variables.
-->
<compilation debug="true" strict="false" explicit="true">
<assemblies>
<add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Web.Extensions.Design, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/></assemblies>
</compilation>
<pages>
<namespaces>
<clear/>
<add namespace="System"/>
<add namespace="System.Collections"/>
<add namespace="System.Collections.Generic"/>
<add namespace="System.Collections.Specialized"/>
<add namespace="System.Configuration"/>
<add namespace="System.Text"/>
<add namespace="System.Text.RegularExpressions"/>
<add namespace="System.Linq"/>
<add namespace="System.Xml.Linq"/>
<add namespace="System.Web"/>
<add namespace="System.Web.Caching"/>
<add namespace="System.Web.SessionState"/>
<add namespace="System.Web.Security"/>
<add namespace="System.Web.Profile"/>
<add namespace="System.Web.UI"/>
<add namespace="System.Web.UI.WebControls"/>
<add namespace="System.Web.UI.WebControls.WebParts"/>
<add namespace="System.Web.UI.HtmlControls"/>
</namespaces>
<controls>
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
<add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extension, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
<add namespace="AjaxControlToolkit" assembly="AjaxControlToolkit" tagPrefix="cc1"/>
<!--
<add namespace="AjaxControlToolkit" tagPrefix="cc1"/>
<add namespace="AjaxControlToolkit" assembly="AjaxControlToolkit" tagPrefix="ajaxToolkit"/>
<add namespace="AjaxControlToolkit" tagPrefix="cc1"/>
-->
</controls>
</pages>
<!--
The <authentication> section enables configuration
of the security authentication mode used by
ASP.NET to identify an incoming user.
-->
<authentication mode="Windows"/>
<!--
The <customErrors> section enables configuration
of what to do if/when an unhandled error occurs
during the execution of a request. Specifically,
it enables developers to configure html error pages
to be displayed in place of a error stack trace.
<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
<error statusCode="403" redirect="NoAccess.htm" />
<error statusCode="404" redirect="FileNotFound.htm" />
</customErrors>
-->
<httpHandlers>
<remove verb="*" path="*.asmx"/>
<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false"/>
</httpHandlers>
<httpModules>
<add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</httpModules>
</system.web>
<system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs" warningLevel="4" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<providerOption name="CompilerVersion" value="v3.5"/>
<providerOption name="WarnAsError" value="false"/>
</compiler>
<compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" warningLevel="4" type="Microsoft.VisualBasic.VBCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<providerOption name="CompilerVersion" value="v3.5"/>
<providerOption name="OptionInfer" value="true"/>
<providerOption name="WarnAsError" value="false"/>
</compiler>
</compilers>
</system.codedom>
<!--
The system.webServer section is required for running ASP.NET AJAX under Internet
Information Services 7.0. It is not necessary for previous version of IIS.
-->
<system.webServer>
<validation validateIntegratedModeConfiguration="false"/>
<modules>
<remove name="ScriptModule"/>
<add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</modules>
<handlers>
<remove name="WebServiceHandlerFactory-Integrated"/>
<remove name="ScriptHandlerFactory"/>
<remove name="ScriptHandlerFactoryAppServices"/>
<remove name="ScriptResource"/>
<add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</handlers>
</system.webServer>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Web.Extensions" publicKeyToken="31bf3856ad364e35"/>
<bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Extensions.Design" publicKeyToken="31bf3856ad364e35"/>
<bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
ASKER
>Also, if you already have System.Web.Extensions (v3.5) on your system, try copying it over to the bin directory of your application.
In the Bin directory of my project I have:
AjaxControlToolkit.dll
AjaxControlToolkit.dll.ref resh
AjaxControlToolkit.pdb
I don't understand what you mean "...have System.Web.Extensions (v3.5) on your system..."
To copy it, where would I find it and what would it look like? Sorry to sound dense.
At the bottom of my question I listed what I have installed so far.
I'm checking the ajax library now...
In the Bin directory of my project I have:
AjaxControlToolkit.dll
AjaxControlToolkit.dll.ref
AjaxControlToolkit.pdb
I don't understand what you mean "...have System.Web.Extensions (v3.5) on your system..."
To copy it, where would I find it and what would it look like? Sorry to sound dense.
At the bottom of my question I listed what I have installed so far.
I'm checking the ajax library now...
ASKER
The first sentence on the link you provided states:
"AJAX functionality is integrated in ASP.NET 3.5 and does not require any additional downloads."
"AJAX functionality is integrated in ASP.NET 3.5 and does not require any additional downloads."
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
In the Bin folder of my project should I "Add Reference" or "Add Existing Item"?
ASKER
I found mine in C:\Program Files\Reference Assemblies\Microsoft\Frame work\v3.5
Why would it not be placed where it is required upon installation.
That seems to me like buying a car and it not having a gas tank and the dealer not mentioning the fact that it doesn't have one.
Why would it not be placed where it is required upon installation.
That seems to me like buying a car and it not having a gas tank and the dealer not mentioning the fact that it doesn't have one.
ASKER
I copied the System.Web.Extensions.dll file into the Bin directory of my project and it did not change the error.
I still get a complile error:
Could not load file or assembly 'System.Web.Extension, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad3 64e35' or one of its dependencies. The system cannot find the file specified.
I still get a complile error:
Could not load file or assembly 'System.Web.Extension, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad3
Ok, now remove the existing reference to System.Web.Extensions and add a reference to it from your Bin folder.
ASKER
The AJAX Control Toolkit installs a SampleWebSite. That builds and runs fine with no problems.
ASKER
The SampleWebSite does not have it in the Bin folder and it works fine.
I could find no way to remove a reference, but I right clicked on the Bin folder and selected the System.Web.Extensions.dll within and added it to the references. Didn't change anything. Same build error.
I could find no way to remove a reference, but I right clicked on the Bin folder and selected the System.Web.Extensions.dll within and added it to the references. Didn't change anything. Same build error.
ASKER
I closed that Solution and started another page from scratch and it worked fine. Go figure.
Thank you for your assistance. Regardless of what the problem actually was, I learned some new places to look for solutions to problems like this and things to check for.
Thanks you.
Thank you for your assistance. Regardless of what the problem actually was, I learned some new places to look for solutions to problems like this and things to check for.
Thanks you.
ASKER
Due to the nature of my problem, God know what it was, I felt that a grade of Excellent was the only appropriate choice. Your suggestions were valid. Thank you.
Just add bin folder to you website & then export ajax toolkit.dll to bin folder & run it
I have same problem this works for me fine.
I have same problem this works for me fine.
This tip is just in case anybody could not be able to solve their problem by following the accepted solution above:
Tip: Follow the steps given in this link and Install the AjaxControlToolkit properly and then try your code.
http://programming.top54u.com/post/How-to-install-AJAX-Control-Toolkit.aspx
Tip: Follow the steps given in this link and Install the AjaxControlToolkit properly and then try your code.
http://programming.top54u.com/post/How-to-install-AJAX-Control-Toolkit.aspx
ASKER
habeeballah,
Do those steps also apply to Visual Studio 2008? The instructions specify VS 2005.
Do those steps also apply to Visual Studio 2008? The instructions specify VS 2005.
http://www.asp.net/ajax/ (click the download essential components link).
Also, if you already have System.Web.Extensions (v3.5) on your system, try copying it over to the bin directory of your application.