Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / UI / WebControls / FilteredDataSetHelper.cs / 2 / FilteredDataSetHelper.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls { using System; using System.Collections; using System.ComponentModel; using System.Data; using System.Globalization; using System.Web.Util; ////// Helper class for SqlDataSource and ObjectDataSource. /// internal static class FilteredDataSetHelper { public static DataView CreateFilteredDataView(DataTable table, string sortExpression, string filterExpression, IDictionary filterParameters) { Debug.Assert(table != null, "Did not expect null table"); Debug.Assert(sortExpression != null, "Did not expect null sort expression"); Debug.Assert(filterExpression != null, "Did not expect null filter expression"); DataView dv = new DataView(table); // Set sort expression if (!String.IsNullOrEmpty(sortExpression)) { dv.Sort = sortExpression; } // Set filter expression if (!String.IsNullOrEmpty(filterExpression)) { bool hasNulls = false; Debug.Assert(filterParameters != null, "Did not expect null filter parameters when a filter expression was set"); object[] values = new object[filterParameters.Count]; int index = 0; foreach (DictionaryEntry de in filterParameters) { if (de.Value == null) { hasNulls = true; break; } values[index] = de.Value; index++; } filterExpression = String.Format(CultureInfo.InvariantCulture, filterExpression, values); // Filter expression should only be applied if there were no null parameters if (!hasNulls) { dv.RowFilter = filterExpression; } } return dv; } public static DataTable GetDataTable(Control owner, object dataObject) { DataSet dataSet = dataObject as DataSet; if (dataSet != null) { if (dataSet.Tables.Count == 0) { throw new InvalidOperationException(SR.GetString(SR.FilteredDataSetHelper_DataSetHasNoTables, owner.ID)); } return dataSet.Tables[0]; } else { return dataObject as DataTable; } } } }
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- RegexCapture.cs
- Page.cs
- MethodToken.cs
- ButtonBase.cs
- dbdatarecord.cs
- SplitContainer.cs
- ObjectRef.cs
- Utility.cs
- TTSEngineTypes.cs
- DataChangedEventManager.cs
- RecordConverter.cs
- LambdaReference.cs
- XmlEnumAttribute.cs
- DesignTimeTemplateParser.cs
- DateTimeSerializationSection.cs
- TriState.cs
- ShaderEffect.cs
- HttpServerVarsCollection.cs
- XamlBrushSerializer.cs
- DataGridViewCellCancelEventArgs.cs
- mediapermission.cs
- TextServicesCompartmentContext.cs
- SignatureHelper.cs
- QuadraticBezierSegment.cs
- DecimalKeyFrameCollection.cs
- Module.cs
- CreateUserErrorEventArgs.cs
- TimeoutValidationAttribute.cs
- HitTestDrawingContextWalker.cs
- WebPartEditorCancelVerb.cs
- PropertyCondition.cs
- WindowsRichEdit.cs
- Expression.cs
- ColumnCollection.cs
- DbSetClause.cs
- XPathPatternBuilder.cs
- XmlChoiceIdentifierAttribute.cs
- DataGrid.cs
- DeclaredTypeElement.cs
- SessionSymmetricMessageSecurityProtocolFactory.cs
- UInt32Storage.cs
- MonthChangedEventArgs.cs
- FileSystemWatcher.cs
- EventLevel.cs
- AttributeQuery.cs
- MarkedHighlightComponent.cs
- DocumentViewerBaseAutomationPeer.cs
- PresentationSource.cs
- WhereQueryOperator.cs
- GB18030Encoding.cs
- FlowDocumentFormatter.cs
- DBCommandBuilder.cs
- SiteMapProvider.cs
- GlyphShapingProperties.cs
- userdatakeys.cs
- UInt64.cs
- CodeGenerationManager.cs
- DebugTracing.cs
- TextTreePropertyUndoUnit.cs
- ComMethodElementCollection.cs
- ILGenerator.cs
- ExeConfigurationFileMap.cs
- EntityDataSourceValidationException.cs
- WindowShowOrOpenTracker.cs
- StickyNoteAnnotations.cs
- GridViewEditEventArgs.cs
- XPathNodeInfoAtom.cs
- DataGridViewComboBoxColumn.cs
- FixedTextSelectionProcessor.cs
- ObjectDataSourceSelectingEventArgs.cs
- XamlUtilities.cs
- XXXInfos.cs
- WmlListAdapter.cs
- GestureRecognitionResult.cs
- StylusPointPropertyInfoDefaults.cs
- HistoryEventArgs.cs
- EntityDataSourceWrapper.cs
- ButtonFlatAdapter.cs
- WebPartDeleteVerb.cs
- SchemaImporterExtensionElementCollection.cs
- Calendar.cs
- FactoryRecord.cs
- PointConverter.cs
- LinqDataSourceContextEventArgs.cs
- WinEventTracker.cs
- shaperfactoryquerycacheentry.cs
- EasingKeyFrames.cs
- MD5.cs
- ValidatedMobileControlConverter.cs
- ClientBuildManagerCallback.cs
- GeometryDrawing.cs
- StringFormat.cs
- SqlXmlStorage.cs
- DelegateOutArgument.cs
- TreeNodeStyleCollection.cs
- ReadOnlyHierarchicalDataSourceView.cs
- InputMethod.cs
- JobStaple.cs
- ErasingStroke.cs
- SiteMapPathDesigner.cs