private Task WriteComparison(string tempFile) { return(Task.Run(() => { using (var sw = new StreamWriter(tempFile)) { var writer = new CsvWriter(sw); writer.WriteField("Privileges Match"); writer.WriteField("Entity"); writer.WriteField("Access Right"); writer.WriteField(SelectedRole.Name + " Privilege Depth"); writer.WriteField(SelectedSecondaryRole.Name + " Privilege Depth"); writer.WriteField("Privilege Name"); writer.WriteField("Privilege ID"); writer.NextRecord(); foreach (var record in Comparisons.OrderBy(c => c.Name)) { writer.WriteField(record.IsMatchYesNo); writer.WriteField(record.EntityName); writer.WriteField(record.AccessRight); writer.WriteField(record.Depth1); writer.WriteField(record.Depth2); writer.WriteField(record.Name); writer.WriteField(record.PrivilegeId); writer.NextRecord(); } } })); }