【问题标题】:asp.net4.5 AjaxControlToolkit error version in webformwebform中的asp.net4.5 AjaxControlToolkit错误版本
【发布时间】:2014-06-05 12:48:38
【问题描述】:

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

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

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

异常详细信息:System.InvalidOperationException:请求的脚本资源“Compat.Timer.Timer.js”需要 ASP.NET AJAX 框架的版本“AjaxControlToolkit, Version=4.5.7.1213, Culture=neutral, PublicKeyToken=28f01b0e84b6d53e”。要使用此资源,请确保应用程序引用版本“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" %>

在正文中:调用脚本工具

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

在配置中是这样的:

  <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 似乎可以工作)

【问题讨论】:

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


    【解决方案1】:

    转到您的 bin 文件夹或您的 dll 所在的文件夹,并检查其中的 AjaxControlToolkit 版本。看看是不是和报错一样(Version=4.5.7.1213)。如果是,请检查您的 Web 配置文件,您可能在其中有两个对工具包的引用。我会从 bin 文件夹开始。

    【讨论】:

    • 我刚刚检查过了。但在我的 bin 文件夹中只有一个文件 AjaxControlToolkit(版本 = 4.5.7.1213)。在我的网络配置中,只有一个引用` `。谢谢。另一种解决方案?
    【解决方案2】:

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

    1. &lt;SafeControls&gt;下:

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

    2。 &lt;assemblies&gt;下:

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

    &lt;assemblies&gt;中需要提到公钥令牌。


    设计/母版页

    <%@ 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>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-10-23
      • 1970-01-01
      • 2014-09-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多