2014-12-04 112 views
0

我得到這個,而在我的MVC項目Telerik的Html5的報表查看器「的請求的資源不支持HTTP方法‘GET’」

無法獲取報表參數使用HTML5報表瀏覽器: 報告「Application.Reports。 Report1,WebAppUsingTelerikReport'無法解析。

單擊控制檯中的錯誤後,它說所要求的資源不支持HTTP方法 'GET'

我ReportsController

public class ReportsController : ReportsControllerBase 
{ 
    protected override IReportResolver CreateReportResolver() 
    { 
     var appPath = HttpContext.Current.Server.MapPath("~/Reports"); 
     //var reportsPath = Path.Combine(appPath, @"..\..\..\Report Designer\Examples"); 

     return new ReportFileResolver(appPath) 
      .AddFallbackResolver(new ReportTypeResolver()); 
    } 
    [System.Web.Http.HttpPost] 
    protected override ICache CreateCache() 
    { 
     return Telerik.Reporting.Services.Engine.CacheFactory.CreateFileCache(); 
    } 
} 

查看

@{ 
Layout = null; 
var typeReportSource = new TypeReportSource() { TypeName = "Application.Reports.Report1, WebAppUsingTelerikReport" 
}; 
} 

<script type="text/javascript"> 
    $(document).ready(function() { 
     debugger; 


     $("#reportViewer1") 
      .telerik_ReportViewer({ 
       serviceUrl: "/api/reports/", 
       templateUrl: '../ReportViewer/templates/telerikReportViewerTemplate-8.2.14.1027.html', 
       reportSource: { 
        report: "@typeReportSource", 
       }, 
       viewMode: telerikReportViewer.ViewModes.INTERACTIVE, 
       scaleMode: telerikReportViewer.ScaleModes.FIT_PAGE_WIDTH, 
       scale: 1.0, 
       ready: function() { 
       } 
      }); 
    }); 
</script> 

回答

1

這聽起來像一個資源被請求你指定不接受HTTP GET請求。我希望根據您的代碼,HTML5報表查看器正試圖呼叫CreateCache(),但您已指定它只應接受[System.Web.Http.HttpPost]的HTTP POST請求。如果這不是問題,請檢查是否存在受限於處理GET請求的另一個Controller方法。

在客戶端的服務器端或瀏覽器內網絡分析器上使用調試器,應該很容易確定哪個請求資源導​​致問題。

相關問題