web.net中的asp.net4.5 AjaxControlToolkit错误版本

时间:2014-06-05 12:48:39

标签: c# asp.net .net ajax webforms

我试图使用AjaxFileupload但是因为"可能缺少某些组件" Ajax Toolkit组件" Ajax Control Toolkit .NET 4.5" http://ajaxcontroltoolkit.codeplex.com/releases/view/116091。安装后?我很容易上传ajax,但我知道我有时会遇到这个问题:

  

' /'中的服务器错误应用。   请求的脚本资源' Compat.Timer.Timer.js'需要版本' AjaxControlToolkit,Version = 4.5.7.1213,Culture = neutral,PublicKeyToken = 28f01b0e84b6d53e' ASP.NET AJAX框架。要使用此资源,请确保应用程序引用版本' AjaxControlToolkit,Version = 4.5.7.1213,Culture = neutral,PublicKeyToken = 28f01b0e84b6d53e'。

     

描述:执行当前Web请求期间发生了未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

     

异常详细信息:System.InvalidOperationException:请求的脚本资源' Compat.Timer.Timer.js'需要版本' AjaxControlToolkit,Version = 4.5.7.1213,Culture = neutral,PublicKeyToken = 28f01b0e84b6d53e' ASP.NET AJAX框架。要使用此资源,请确保应用程序引用版本' AjaxControlToolkit,Version = 4.5.7.1213,Culture = neutral,PublicKeyToken = 28f01b0e84b6d53e'。

项目变得不稳定。我尝试删除并重新安装(Ajax control toolkit asssembly reference error)但没有成功( 我删除了项目中的所有文件,并从服务器下载了2天的早期版本,但它没有帮助!有什么我需要做的吗?我可以移动更多因为我在这个项目中使用了很多Ajax !!!

    <%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Defaut.aspx.cs" Inherits="Group" %>

    <%@ Register assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagprefix="asp" %>
正文中的

:调用scripttool

    <asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server" CombineScripts="True"></asp:ToolkitScriptManager>

在Config中这样的事情:

  <pages controlRenderingCompatibilityVersion="4.0">
  <controls>
    <add assembly="Microsoft.AspNet.Web.Optimization.WebForms" namespace="Microsoft.AspNet.Web.Optimization.WebForms" tagPrefix="webopt" />
    <add tagPrefix="ajaxToolkit" assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" />
  </controls>
</pages>

有人可以帮忙吗?

编辑:Chrome和Safari更常出现此错误。 (目前Fierox和IE似乎有效)

2 个答案:

答案 0 :(得分:1)

转到您的bin文件夹或dll所在的文件夹,并检查您在那里的AjaxControlToolkit版本。查看它是否与错误相同(版本= 4.5.7.1213)。如果是,则检查您的Web配置文件,您可能在工具包中有两个引用。我会从bin文件夹开始。

答案 1 :(得分:0)

需要在 web.config 中添加以下两行:

<强> 1。在<SafeControls>下:

<SafeControl Assembly="AjaxControlToolkit, Version=4.5.7.1213, Culture=neutral, PublicKeyToken=28f01b0e84b6d53e" Namespace="AjaxControlToolkit" TypeName="*" Safe="True" SafeAgainstScript="True" />

<强> 2。在<assemblies>下:

<add assembly="AjaxControlToolkit, Version=4.5.7.1213, Culture=neutral, PublicKeyToken=28f01b0e84b6d53e" />

需要提及<assemblies>公钥令牌。


设计/母版页

<%@ Register Assembly="AjaxControlToolkit, Version=4.5.7.1213, Culture=neutral, PublicKeyToken=28f01b0e84b6d53e" Namespace="AjaxControlToolkit" TagPrefix="ajaxToolkit" %>

(注意:这里选择的标签前缀为ajaxToolkit,因此将引用ajaxcontrols)

asp:scriptmanager替换为AjaxControlToolkitScriptManager(如果不存在则插入):

<ajaxToolkit:ToolkitScriptManager id="ScriptManager" runat="server" EnablePageMethods="false" EnablePartialRendering="true" EnableScriptGlobalization="false" EnableScriptLocalization="true"/>

现在 AjaxControls 可以在这些标签下的设计页面上使用:

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
    <ContentTemplate>    
       ---your code---    
    </ContentTemplate>
</asp:UpdatePanel>