Cloud
Облачный сервис для быстрого и эффективного анализа и визуализации данных для вашего бизнеса без необходимости создания своих приложений и программирования.
IEnumerable and ITypedList.ViewIEnumerable and ViewITypedList. Each of these views has its own GetReport action handler. Also you need to define the ViewerEvent action:
@using Stimulsoft.Report.Mvc;
...
@Html.Stimulsoft().StiMvcViewer(new StiMvcViewerOptions()
{
Actions =
{
GetReport = "GetReportIEnumerable",
ViewerEvent = "ViewerEvent"
}
})
...
@Html.Stimulsoft().StiMvcViewer(new StiMvcViewerOptions()
{
Actions =
{
GetReport = "GetReportITypedList",
ViewerEvent = "ViewerEvent"
}
})
GetReportIEnumerable action loads the IEnumerable report and register data for it. In a similar way, the GetReportITypedList action loads the ITypedList report and register data for it.CheckReference() specal method. This method adds a reference to the assembly of the current project in the report ReferencedAssemblies collection, it is necessary to access the business objects that are compiled in this application. Optionally, the business objects may be taken from another assembly:
public ActionResult GetReportIEnumerable()
{
var report = new StiReport();
report.Load(Server.MapPath("~/Content/Reports/BusinessObjects_IEnumerable.mrt"));
report.RegData("EmployeeIEnumerable", CreateBusinessObjectsIEnumerable.GetEmployees());
CheckReference(report);
return StiMvcViewer.GetReportResult(report);
}
public ActionResult GetReportITypedList()
{
var report = new StiReport();
report.Load(Server.MapPath("~/Content/Reports/BusinessObjects_ITypedList.mrt"));
report.RegData("EmployeeITypedList", CreateBusinessObjectsITypedList.GetEmployees());
CheckReference(report);
return StiMvcViewer.GetReportResult(report);
}
private void CheckReference(StiReport report)
{
var assemblyName = Assembly.GetExecutingAssembly().ManifestModule.Name;
var refs = new List<string>(report.ReferencedAssemblies);
if (!refs.Contains(assemblyName))
{
refs.Add(assemblyName);
report.ReferencedAssemblies = refs.ToArray();
}
}
ViewerEvent action handles all the viewer events (switching pages, zooming, printing, exporting, interactivity, etc.) and returns the answer to the client using the ViewerEventResult() static method:
public ActionResult ViewerEvent()
{
return StiMvcViewer.ViewerEventResult();
}