A report's data can be swapped at run time: clone the report, clear its template connections and register a fresh dataset.

Replace the data.
var report = Report.Clone() as StiReport;
report.Dictionary.Databases.Clear();

var data = new DataSet();
data.ReadXml(await Http.GetStreamAsync("Data/Demo1.xml"));
report.RegData(data);
report.Dictionary.Synchronize();

report.Render();
Report = report;
StateHasChanged();

How it works. The report is re-rendered against code-supplied data, so one template can present entirely different datasets on demand.
На скриншоте ниже Вы можете увидеть результат выполнения данного кода:

Connecting to Data from Code