0

我最近购买了 VS2010 来运行我们的 2010 年全球项目之一。在其他程序集中,它运行 ajaxcontroltoolkit、web.UI.extensions 以及 Devexpress(第三方)。由于项目标准化,我们将汇编寄存器放在 aspx 文件的顶部。

<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<%@ Register Assembly="DevExpress.Web.ASPxGridView.v10.2, Version=10.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxGridView" TagPrefix="dx" %>    
<%@ Register assembly="DevExpress.Web.ASPxEditors.v10.2, Version=10.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" namespace="DevExpress.Web.ASPxEditors" tagprefix="dx" %>

现在问题来了,我的 ASP.net 对象(如 asp:Textbox)智能感知不适用于 .aspx 页面。适用于代码隐藏页面。我尝试了以下方法:-

  1. 从同事那里导入设置没有这个问题
  2. 设置为默认设置
  3. 默认为 %AppCode%/Microsoft/Visual Studio/10.0 文件夹
  4. 修复/重新安装第三方(DevExpress)

在反复关闭和​​打开我的解决方案后现在很好奇,我发现当新打开解决方案时,asp.net Intellisense 确实有效。但是,在此期间,我的 DevExpress 智能感知没有。大约 10 秒后,DevExpress 智能感知现在可以工作了,但我所有的 asp.net 智能感知都没有。这让我相信某处存在一些冲突,但我该如何解决这个问题

4

1 回答 1

0

我将 AjaxControlToolkit 程序集引用放在 DevExpress 引用下方,现在我的所有智能感知都正常工作。不能说我现在明白它是如何工作的。以下是我采取的步骤:-

  1. 删除 AjaxControlToolkit 参考 - 存在 ASP.net 和 DevExpress intellisense
  2. 在 web.config 中放置了 AjaxControlToolkit 参考 - 所有 3 个智能感知都存在
  3. 将 AjaxControlToolkit 参考放在 DevExpress 参考下 - 所有 3 个智能感知都存在

有可能我们删除和替换了 AjaxControlToolkit 引用以某种方式刷新链接 - 以前阻止智能感知访问 ASP.net 对象的链接。无论如何,我很高兴它现在有效。

编辑:意识到解决方案只是将 AjaxControlToolkit 的 tagprefix 重命名为除 asp 之外的其他名称。关于 AjaxControlToolkit 的一些东西给我带来了麻烦和一些 VS2010,因为它共享 asp tagprefix,所有 asp 对象都停止工作。我将它重命名为“ajax”,现在我看到了我所有的 asp 对象,尽管“ajax”对象仍然不起作用。

于 2012-05-30T03:13:13.303 回答