我已将MVC3应用程序升级到MVC4应用程序并将目标框架更改为4.0。没有构建错误。但是在运行时,系统无法加载存在telerik扩展网格的页面。
我确实得到以下错误
GridBuilder中的索引超出范围异常
所以,我已将telerik扩展网格更改为kendo网格,但确实低于错误。
在 System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument 参数,ExceptionResource资源)at System.Collections.ObjectModel.Collection
1.set_Item(Int32 index, T value) at System.Web.Mvc.ControllerContext.get_RequestContext()
1.SetUrl()at Kendo.Mvc.UI.Fluent.CrudOperationBuilderBase
at Kendo.Mvc.UI.NavigatableExtensions.GenerateUrl(INavigatable navigatable, ViewContext viewContext, IUrlGenerator urlGenerator)
at Kendo.Mvc.UI.Fluent.CrudOperationBuilderBase1.Action(String actionName, String controllerName, Object routeValues) at Kendo.Mvc.UI.Fluent.CrudOperationBuilderBase
1.Action(字符串 actionName,String controllerName)
答案 0 :(得分:0)
ASP.Net MVC的Telerik扩展仅支持MVC版本1,2和3。
当您将遗留应用程序从MVC3升级到MVC4时,需要通过修改root web.config文件告诉编译器使用版本3编译第三方DLL(如telerik扩展)。
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc"
publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="4.0.0.0"/>
</dependentAssembly>