public Guid PostImport(string datasetDisplayName, string filePath, ImportConflictHandlerModeEnum nameConflict) { using (var fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read)) { var response = this.Client.Imports.PostImportWithFile( fileStream: fileStream, datasetDisplayName: datasetDisplayName, nameConflict: nameConflict.ToString() ); return(Guid.Parse(response.Id)); } }
public Report PostReport(string reportName, string filePath, ImportConflictHandlerModeEnum nameConflict, int timeout) { var importId = this.PostImport(reportName, filePath, nameConflict); Nullable <DateTime> timeoutAt = null; if (timeout > 0) { timeoutAt = DateTime.Now.AddSeconds(timeout); } Import import = null; do { import = this.GetImport(importId: importId); if (import.ImportState != "Succeeded") { if (timeoutAt != null && DateTime.Now > timeoutAt) { throw new TimeoutException(); } else { System.Threading.Thread.Sleep(500); } } } while (import.ImportState == "Publishing"); if (import.ImportState != "Succeeded") { throw new ImportException(importId, reportName, import.ImportState); } return(import.Reports.Single()); }