/// <summary> /// Raises the <see cref="Selecting"/> event. /// </summary> /// <param name="args">The <see cref="NIntegrate.Web.EventArgs.DataSourceSelectingEventArgs"/> instance containing the event data.</param> internal void OnSelecting(DataSourceSelectingEventArgs args) { if (Selecting != null) { Selecting(this, args); } }
protected override IEnumerable ExecuteSelect(DataSourceSelectArguments arguments) { if (_owner.Criteria == null) { throw new ArgumentException("Missing QueryTableType or Criteria setting on QueryDataSource"); } var adjustedParameterValues = _owner.CriteriaParameters.GetValues(HttpContext.Current, _owner); var en = adjustedParameterValues.GetEnumerator(); while (en.MoveNext()) { _owner.Criteria.UpdateIdentifiedParameterValue(en.Key.ToString(), en.Value); } var selectingArgs = new DataSourceSelectingEventArgs(_owner.Criteria, adjustedParameterValues); _owner.OnSelecting(selectingArgs); if (selectingArgs.Cancel) { return(selectingArgs.Result != null ? new DataView(selectingArgs.Result) : null); } var criteria = _owner.Criteria.Clone(); if (arguments != null && arguments != DataSourceSelectArguments.Empty) { //adjust criteria according to arguments if (arguments.RetrieveTotalRowCount) { arguments.TotalRowCount = _owner.QueryService.Execute(criteria, true); _owner.LastTotalCount = arguments.TotalRowCount; } if (arguments.MaximumRows > 0) { criteria.SetMaxResults(arguments.MaximumRows); } if (arguments.StartRowIndex > 0) { criteria.SetSkipResults(arguments.StartRowIndex); } if (!string.IsNullOrEmpty(arguments.SortExpression)) { if (_owner.AlwaysAppendDefaultSortBysWhenSorting) { InsertSortExpressinAtTopOfSortBys(arguments.SortExpression, criteria); } else { criteria.SortBys.Clear(); AppendSortExpression(criteria, arguments.SortExpression); } } } var result = _owner.QueryService.Query(criteria); _owner.OnSelected(new DataSourceSelectedEventArgs(result)); return(new DataView(result)); }
protected void jdsrefFirstDictionary_Selecting(object sender, DataSourceSelectingEventArgs e) { var parameters = new BrowseFilterParameters(); GetBrowseFilterParameters_refFirstDictionary(parameters, _gridColumns); // todo: реализовать передачу SelectParameters // jdsrefFirstDictionary.BaseView.SelectParameters = Get_refFirstDictionarySelectParameters(); var control = jdsrefFirstDictionary.BaseView.CreateDefaultFilter( "SampleDictionaries.UserControls.DIC_MyFirstDictionaryFilter", "DIC_MyFirstDictionary", "none", null, parameters, e.DB); e.FilterControl = control; }
protected void Source_Selecting(object sender, DataSourceSelectingEventArgs e) { e.FilterControl = GetFilterControl((DBDataContext)e.DB); }