Beispiel #1
0
        async void searchDataForRootTable()
        {
            if (null != SelectedRootDataView)
            {
                if (!AppSettings.SearchValues.Contains(SelectedSearchCriteria))
                {
                    AppSettings.SearchValues.Add(SelectedSearchCriteria);
                    AppSettings.Save();
                    OnPropertyChanged("AppSettings");
                    ClearSearchHistoryCommand.AsRelay().RaiseCanExecuteChanged();
                }

                if (!IsBusy)
                {
                    Common.Extensions.TraceLog.Information("Searching data for table {name} with {SelectedColumn} {SelectedOperator} {SearchCriteria}",
                                                           WorkingTable.Root.ConfigTable.name,
                                                           SelectedColumn,
                                                           SelectedOperator,
                                                           SearchCriteria
                                                           );

                    IsBusy = true;
                    var table = await WorkingTable.Root.ConfigTable
                                .Query(SelectedOperator.ToArray(),
                                       "".ToArray(),
                                       true,
                                       new SqlParameter(SelectedColumn, SearchCriteria));

                    IsBusy       = false;
                    WorkingTable = table;
                    SearchCommand.AsRelay().RaiseCanExecuteChanged();
                    CopyCommand.AsRelay().RaiseCanExecuteChanged();
                }
            }
        }