Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ContextMenu.cs
- RegistrySecurity.cs
- MenuItem.cs
- CompositeFontParser.cs
- safesecurityhelperavalon.cs
- OutputScopeManager.cs
- LinqDataSourceDeleteEventArgs.cs
- WSTrustFeb2005.cs
- ConnectionPoint.cs
- PaintEvent.cs
- ECDiffieHellmanCngPublicKey.cs
- IssuedTokenClientElement.cs
- ImageClickEventArgs.cs
- CryptoStream.cs
- HMACSHA384.cs
- Storyboard.cs
- SqlConnectionPoolProviderInfo.cs
- RevocationPoint.cs
- SourceChangedEventArgs.cs
- BitmapSourceSafeMILHandle.cs
- RowTypeElement.cs
- KeyedCollection.cs
- HtmlInputButton.cs
- HttpListenerException.cs
- ObjectDataProvider.cs
- PointLight.cs
- ProviderUtil.cs
- ExceptionValidationRule.cs
- HyperLinkColumn.cs
- VectorValueSerializer.cs
- WebConfigurationHostFileChange.cs
- BehaviorEditorPart.cs
- IRCollection.cs
- Single.cs
- TextLine.cs
- DrawingServices.cs
- ProcessModelSection.cs
- CallSiteHelpers.cs
- DelegatingTypeDescriptionProvider.cs
- MergeFilterQuery.cs
- documentsequencetextpointer.cs
- CommandManager.cs
- DataGridColumnCollection.cs
- XmlLinkedNode.cs
- PasswordBox.cs
- CompiledRegexRunner.cs
- EventLogEntry.cs
- GetLedgerEntryForRecipientRequest.cs
- TrackBar.cs
- Menu.cs
- ScriptIgnoreAttribute.cs
- XmlSchemaComplexContentExtension.cs
- SamlAuthorizationDecisionStatement.cs
- SelectorAutomationPeer.cs
- SafeRightsManagementSessionHandle.cs
- DateTimeOffsetStorage.cs
- StateInitializationDesigner.cs
- XmlBuffer.cs
- ContentElement.cs
- DoubleLinkListEnumerator.cs
- ExpressionHelper.cs
- ResourcePermissionBase.cs
- FaultContext.cs
- DataSet.cs
- ListManagerBindingsCollection.cs
- EtwTrackingBehaviorElement.cs
- HtmlEmptyTagControlBuilder.cs
- DataGrid.cs
- HtmlTableCellCollection.cs
- Mouse.cs
- MaskInputRejectedEventArgs.cs
- AssociationSet.cs
- ImageCodecInfoPrivate.cs
- DrawToolTipEventArgs.cs
- StrokeIntersection.cs
- RequestTimeoutManager.cs
- DataAdapter.cs
- MethodInfo.cs
- Solver.cs
- PropertyStore.cs
- SystemFonts.cs
- DataControlPagerLinkButton.cs
- WindowsRegion.cs
- DataGridHeaderBorder.cs
- WebPartZoneCollection.cs
- EncryptedXml.cs
- EventPropertyMap.cs
- DockPattern.cs
- WorkflowQueue.cs
- SQLBytes.cs
- DataGridViewColumnCollection.cs
- PerformanceCounterManager.cs
- XmlCharCheckingWriter.cs
- ListDesigner.cs
- XmlnsPrefixAttribute.cs
- ChangeToolStripParentVerb.cs
- ProfileServiceManager.cs
- DesignTimeDataBinding.cs
- ScalarType.cs
- FontUnit.cs