Javascript Telerik HTML5报表查看器不会抛出任何报表实例错误
我试图在我的MVC4项目上显示telerik HTML5报表查看器小部件。我在部分div中定义了报表查看器,如下所示Javascript Telerik HTML5报表查看器不会抛出任何报表实例错误,javascript,asp.net-mvc,reporting-services,telerik,Javascript,Asp.net Mvc,Reporting Services,Telerik,我试图在我的MVC4项目上显示telerik HTML5报表查看器小部件。我在部分div中定义了报表查看器,如下所示 @(Html.TelerikReporting().ReportViewer() .Id("reportViewer1") .ServiceUrl("/api/reports/") .TemplateUrl("/ReportViewer/templates/telerikReportViewerTemplate.html") .ReportSour
@(Html.TelerikReporting().ReportViewer()
.Id("reportViewer1")
.ServiceUrl("/api/reports/")
.TemplateUrl("/ReportViewer/templates/telerikReportViewerTemplate.html")
.ReportSource(new TypeReportSource() { TypeName = "DialerReports.ReportCatalog, DialerReports" })
.ViewMode(ViewModes.INTERACTIVE)
.ScaleMode(ScaleModes.SPECIFIC)
.Scale(1.0)
.PersistSession(false)
)
我按照telerik网站上的指南来设置项目,因此包含javascript文件。我确实将它们放在MVC捆绑包中,而不是直接放在MVC捆绑包中,但我不确定这是否会产生影响
我遇到的问题是这个。当网页加载时,JavaScript运行时错误:无报告实例的Report Viewer.js文件会抛出一个错误。我使用的是报表查看器的8.0.14版本,我知道该错误意味着实例未定义,但我无法准确地确定报表实例的定义位置以解决此问题。有人能解释一下吗?在我的例子中,我使用的是ASP.NETMVC4项目模板——它是jQueryV1.7.1附带的。Telerik报告至少需要jQuery v1.9。我将jQuery更新为2.1-js运行时错误消失。好的,这个问题实际上是由于我将routeconfig.cs文件中的默认路由更改为:
config.Routes.MapHttpRoute(
name: "ActionsApi",
routeTemplate: "api/{controller}/{action}/{id}/{id1}/{id2}/{id3}",
defaults: new {
controller = "Actions",
id = RouteParameter.Optional, id1 = RouteParameter.Optional, id2 = RouteParameter.Optional, id3 = RouteParameter.Optional }
);
然后添加了默认的路由配置,作为另一个路由。问题实际上是telerik report viewer api试图使用上面的routepath,而不是另一条路径的正确路径。Jquery实际上抛出了正确的错误,因为没有来自报告api的报告实例。是的,Telerik支持部门也建议了这一点,我将在下面公布解决方案的结果