【问题标题】:Javascript errors after upgrading to .NET 4.0升级到 .NET 4.0 后出现 Javascript 错误
【发布时间】:2011-05-25 21:45:52
【问题描述】:

我继承了一个有效的 VB.NET 2.0 Web 应用程序,该应用程序具有多个用户控件和更新面板内的 GridView。运行 VS 2010 升级向导后,该应用程序在调试器中运行良好,但其中几个 Gridview 除外。在这些中,更新和删除工作,但添加新项目会在单击“保存”时导致以下 javascript 错误(调用 DoPostBackWithOptions):

Microsoft jscript runtime error 
Sys.WebForms.PageRequestManagerServerErrorException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index

我的理论是代码没问题(我还没有碰过它)并且有某种配置问题导致了这种情况。我查看了 SO 和其他地方,并调整了我的 web 配置并更新了 Ajax 工具包程序集。我无处可循 ScriptResource.axd javascript 抛出错误。有什么建议吗?

更新

如果我使用 VS 2008 向导将其升级到 .NET 3.5,该应用程序运行良好。但是,如果我随后使用 VS 2010 将其升级到 4.0,问题就会再次出现。

【问题讨论】:

    标签: asp.net gridview webforms updatepanel


    【解决方案1】:

    您是否尝试过设置controlRenderingCompatibilityVersion?升级过程应该为您包括它,但这可能是您心痛的原因。它在您的web.config 文件的<pages... 标记中...

    【讨论】:

    • 是的好建议。我尝试将其设置为 3.5 和 4.0,但在这两种情况下都没有区别。
    【解决方案2】:

    这只是一种解决方法,而不是修复方法。但我想我会添加它以帮助其他可能有类似问题的人。

    我发现项目升级到 .NET 3.5 就好了,但是升级到 4.0 会破坏它。我不确定是框架破坏了它还是升级向导破坏了它。

    所以我的成功之路是:

    1. 在 VS 2008 中打开并运行升级 升级到 3.5 的向导。
    2. 在VS 2010中再次打开项目 并运行升级向导,但选择 将其保留在 3.5 框架上。

    此时项目运行良好,我可以使用 VS 2010 进行更新。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-04-15
      • 1970-01-01
      • 2021-05-14
      • 2013-07-22
      • 1970-01-01
      • 2013-09-07
      • 2020-01-19
      相关资源
      最近更新 更多