Click here to Skip to main content
15,305,517 members
Home / Discussions / C#
   

C#

 
GeneralRe: How to get Millions of files from folder and bulk insert in database Pin
Ankur B. Patel16-Oct-21 4:59
MemberAnkur B. Patel16-Oct-21 4:59 
GeneralRe: How to get Millions of files from folder and bulk insert in database Pin
Gerry Schmitz16-Oct-21 11:04
mveGerry Schmitz16-Oct-21 11:04 
AnswerRe: How to get Millions of files from folder and bulk insert in database Pin
OriginalGriff16-Oct-21 6:43
mveOriginalGriff16-Oct-21 6:43 
AnswerRe: How to get Millions of files from folder and bulk insert in database Pin
Michael Sydney Balloni16-Oct-21 17:36
mvaMichael Sydney Balloni16-Oct-21 17:36 
AnswerRe: How to get Millions of files from folder and bulk insert in database Pin
jschell24-Oct-21 6:50
Memberjschell24-Oct-21 6:50 
QuestionPredicateBuilder Question Pin
Kevin Marois15-Oct-21 5:24
professionalKevin Marois15-Oct-21 5:24 
AnswerRe: PredicateBuilder Question Pin
Eddy Vluggen15-Oct-21 14:44
professionalEddy Vluggen15-Oct-21 14:44 
QuestionTask.WhenAll ConfigureAwait Question Pin
Kevin Marois14-Oct-21 12:57
professionalKevin Marois14-Oct-21 12:57 
I'm attemping to get data for a dialog that has 2 comboboxes. I want to keep the UI from hanging, so I'm trying this:
WaitIndicatorVisibility = Visibility.Visible;

List<ProjectHeaderEntity> projects = null;
List<NavigationGroupEntity> jobs = null;

await Task.Run(() => { projects = AppCore.BizObject.GetProjectHeaders(AppCore.AppCompany.Id).ToList(); });
await Task.Run(() => { jobs = AppCore.BizObject.GetJobListHeaders(AppCore.AppCompany.Id).ToList(); });

var dialogVm = new VendorsByProjectAndJobReportViewModel(projects, jobs);
DialogResultEx result = DialogService.ShowDialog(dialogVm, typeof(MainWindowView));
This works fine. Both lists get populated and the dialog works fine.

But if I attemp to to use WhenAll to improve performance...
WaitIndicatorVisibility = Visibility.Visible;

List<ProjectHeaderEntity> projects = null;
List<NavigationGroupEntity> jobs = null;

List<Task> tasks = new List<Task>();
var t1 = Task.Run(() => { projects = AppCore.BizObject.GetProjectHeaders(AppCore.AppCompany.Id).ToList(); });
var t2 = Task.Run(() => { jobs = AppCore.BizObject.GetJobListHeaders(AppCore.AppCompany.Id).ToList(); });
tasks.Add(t1);
tasks.Add(t2);

await Task.WhenAll(tasks).ConfigureAwait(false);

var dialogVm = new VendorsByProjectAndJobReportViewModel(projects, jobs);
DialogResultEx result = DialogService.ShowDialog(dialogVm, typeof(MainWindowView));
Both lists get populated but when I attempt to show the dialog I get an exception "The calling thread must be STA, because many UI components require this.'"

If I remove the ConfigureAwait then everything works fine.

I've tried looking up ConfigureAwait. Can someone explain this is plain english?
If it's not broken, fix it until it is.
Everything makes sense in someone's mind.
Ya can't fix stupid.

AnswerRe: Task.WhenAll ConfigureAwait Question Pin
Richard Deeming14-Oct-21 23:15
mveRichard Deeming14-Oct-21 23:15 
GeneralRe: Task.WhenAll ConfigureAwait Question Pin
Kevin Marois15-Oct-21 4:53
professionalKevin Marois15-Oct-21 4:53 
GeneralRe: Task.WhenAll ConfigureAwait Question Pin
Richard Deeming15-Oct-21 5:59
mveRichard Deeming15-Oct-21 5:59 
GeneralRe: Task.WhenAll ConfigureAwait Question Pin
Kevin Marois15-Oct-21 6:29
professionalKevin Marois15-Oct-21 6:29 
GeneralRe: Task.WhenAll ConfigureAwait Question Pin
Kevin Marois15-Oct-21 8:08
professionalKevin Marois15-Oct-21 8:08 
GeneralRe: Task.WhenAll ConfigureAwait Question Pin
Richard Deeming17-Oct-21 21:58
mveRichard Deeming17-Oct-21 21:58 
GeneralRe: Task.WhenAll ConfigureAwait Question Pin
Kevin Marois18-Oct-21 4:01
professionalKevin Marois18-Oct-21 4:01 
QuestionCodility fails to compile even though it compiles in VS code? Pin
Cliff ludo13-Oct-21 6:41
MemberCliff ludo13-Oct-21 6:41 
AnswerRe: Codility fails to compile even though it compiles in VS code? Pin
BillWoodruff13-Oct-21 17:11
mveBillWoodruff13-Oct-21 17:11 
Generalpass array to function Pin
Cliff ludo12-Oct-21 23:04
MemberCliff ludo12-Oct-21 23:04 
GeneralRe: pass array to function Pin
Richard Deeming12-Oct-21 23:25
mveRichard Deeming12-Oct-21 23:25 
GeneralRe: pass array to function Pin
Cliff ludo12-Oct-21 23:32
MemberCliff ludo12-Oct-21 23:32 
QuestionCreating An Async Method Pin
Kevin Marois7-Oct-21 11:02
professionalKevin Marois7-Oct-21 11:02 
AnswerRe: Creating An Async Method Pin
Richard Deeming7-Oct-21 21:41
mveRichard Deeming7-Oct-21 21:41 
GeneralRe: Creating An Async Method Pin
Kevin Marois8-Oct-21 6:00
professionalKevin Marois8-Oct-21 6:00 
GeneralRe: Creating An Async Method Pin
Richard Deeming8-Oct-21 6:35
mveRichard Deeming8-Oct-21 6:35 
GeneralRe: Creating An Async Method Pin
Kevin Marois8-Oct-21 6:38
professionalKevin Marois8-Oct-21 6:38 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.