I'm using the HTML5 report viewer with an ObjectDataSource. The model referenced by the ObjectDataSource is populated by a logic call from a service that is injected in my MVC reports controller. Unless the model exposes a static method to get the data for the report, no data is returned in the report (all fields are empty). However, when the method is static, two different clients accessing two different sets of data (different filter parameters in the controller), are stepping on each other, and the wrong report is rendered for the second user. For example, if I log in to my application from two different browsers (Chrome and FF, for example), load the report with different data filter parameters in each browser (which should display two different reports), and then refresh both browsers simultaneously, both render the same report because of the static method. Obviously, this is a big problem for a multi-user web application - it is assumed that a report should be accessible by many users that are viewing different data.
How can an ObjectDataSource be used with non-static methods? Or, assuming you have a business logic layer call that returns a collection of objects to feed a Telerik report, how should an HTML5 Telerik report be architected for multi-user access, where the same report can be rendered simultaneously for multiple users accessing different data (invoices for example)?
Thanks!
How can an ObjectDataSource be used with non-static methods? Or, assuming you have a business logic layer call that returns a collection of objects to feed a Telerik report, how should an HTML5 Telerik report be architected for multi-user access, where the same report can be rendered simultaneously for multiple users accessing different data (invoices for example)?
Thanks!