Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / WebControls / FilteredDataSetHelper.cs / 1305376 / 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; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// 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; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- MarkupExtensionSerializer.cs
- ThemeDirectoryCompiler.cs
- PolyLineSegment.cs
- ButtonFlatAdapter.cs
- Lasso.cs
- DefinitionBase.cs
- WindowsIdentity.cs
- CleanUpVirtualizedItemEventArgs.cs
- TlsnegoTokenProvider.cs
- PathFigureCollectionConverter.cs
- FamilyMapCollection.cs
- OutputChannel.cs
- FieldMetadata.cs
- CodeChecksumPragma.cs
- ImageAttributes.cs
- DataAccessor.cs
- DependencyPropertyDescriptor.cs
- EmptyImpersonationContext.cs
- NotImplementedException.cs
- SafeLibraryHandle.cs
- CodeSnippetExpression.cs
- LicenseManager.cs
- Constraint.cs
- ConnectionStringSettings.cs
- ArgumentException.cs
- ArrayWithOffset.cs
- TraceContext.cs
- AdRotatorDesigner.cs
- StringReader.cs
- _MultipleConnectAsync.cs
- SimpleExpression.cs
- TabPanel.cs
- Splitter.cs
- ButtonColumn.cs
- shaperfactoryquerycacheentry.cs
- TemplatedWizardStep.cs
- UpdateTranslator.cs
- NavigationHelper.cs
- RemoteHelper.cs
- AutomationPropertyInfo.cs
- SQLGuidStorage.cs
- StylusEventArgs.cs
- SessionParameter.cs
- XmlNodeList.cs
- MissingSatelliteAssemblyException.cs
- Object.cs
- SerializationHelper.cs
- SmtpException.cs
- ToolStripControlHost.cs
- ConstNode.cs
- CheckPair.cs
- DbProviderManifest.cs
- ServiceBusyException.cs
- Panel.cs
- HScrollBar.cs
- XPathNodeList.cs
- WebBrowserSiteBase.cs
- ExpandSegmentCollection.cs
- RegistrationContext.cs
- CFGGrammar.cs
- FakeModelItemImpl.cs
- ZipIOCentralDirectoryBlock.cs
- CodeNamespaceImport.cs
- HighContrastHelper.cs
- SerializerProvider.cs
- DesignerLoader.cs
- WorkflowFormatterBehavior.cs
- UIAgentCrashedException.cs
- RepeaterItem.cs
- BooleanProjectedSlot.cs
- WebEvents.cs
- wgx_render.cs
- ToolBarPanel.cs
- SerializerWriterEventHandlers.cs
- ButtonAutomationPeer.cs
- FrugalList.cs
- ItemDragEvent.cs
- DoWorkEventArgs.cs
- FixUp.cs
- TreeNodeBindingCollection.cs
- MenuCommand.cs
- XmlWriterSettings.cs
- COM2ExtendedUITypeEditor.cs
- MouseGestureConverter.cs
- ApplicationContext.cs
- XamlReaderConstants.cs
- AttachedAnnotation.cs
- VariableQuery.cs
- DbExpressionVisitor_TResultType.cs
- NumberSubstitution.cs
- Binding.cs
- TextMetrics.cs
- CellCreator.cs
- Vector3DKeyFrameCollection.cs
- RightNameExpirationInfoPair.cs
- SystemNetHelpers.cs
- SourceFileInfo.cs
- Material.cs
- Guid.cs
- ToolStripGrip.cs