private void GetSolutions() { if (Service == null) { return; } if (working) { return; } working = true; WorkAsync(new WorkAsyncInfo("Loading solutions", (eventargs) => { var svc = new CrmServiceProxy(Service); var log = new PluginLogger("ShuffleBuilder", true, ""); try { solutionsUnmanaged = CintDynEntity.RetrieveMultiple(svc, "solution", new string[] { "isvisible", "ismanaged" }, new object[] { true, false }, new ColumnSet("solutionid", "uniquename", "friendlyname", "version"), log); } finally { log.CloseLog(); } }) { PostWorkCallBack = (completedargs) => { if (completedargs.Error != null) { MessageBox.Show(completedargs.Error.Message); } working = false; } }); }