示例#1
0
        private async Task MergeAsync()
        {
            await SetBusyWhileExecutingAsync(async() =>
            {
                var orderedSelectedChangesets = SelectedChangesets.OrderBy(x => x.ChangesetId).ToList();

                _mergeOperation.MyCurrentAction += MergeOperation_MyCurrentAction;

                await _mergeOperation.Execute(new MergeModel
                {
                    WorkspaceModel      = SelectedWorkspace,
                    OrderedChangesetIds = orderedSelectedChangesets.Select(x => x.ChangesetId).ToList(),
                    SourceBranch        = SelectedSourceBranch,
                    TargetBranch        = SelectedTargetBranch
                });


                SaveDefaultSettings();
                SaveDefaultSettingsSolutionWide();

                _configHelper.SaveDictionary();
            });

            MyCurrentAction = null;
            _mergeOperation.MyCurrentAction -= MergeOperation_MyCurrentAction;
        }