Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / 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; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ProxyHelper.cs
- XmlSchemaParticle.cs
- OleDbSchemaGuid.cs
- SelectorItemAutomationPeer.cs
- ServiceOperationParameter.cs
- OletxResourceManager.cs
- BoundingRectTracker.cs
- InkCanvasSelectionAdorner.cs
- TextDecoration.cs
- DataTemplateSelector.cs
- DocumentPageHost.cs
- RelationshipEntry.cs
- BlobPersonalizationState.cs
- Repeater.cs
- CodeMethodReturnStatement.cs
- TableLayoutPanelCellPosition.cs
- ToolboxComponentsCreatingEventArgs.cs
- DataBoundControlAdapter.cs
- Quaternion.cs
- GridViewHeaderRowPresenter.cs
- DesignerOptionService.cs
- ExpressionBindingCollection.cs
- OleDbCommand.cs
- SqlInternalConnection.cs
- XmlQueryOutput.cs
- SelectionRangeConverter.cs
- UIAgentAsyncEndRequest.cs
- GridViewRowCollection.cs
- Style.cs
- DoubleAnimationUsingPath.cs
- DataSetViewSchema.cs
- GridSplitter.cs
- IItemContainerGenerator.cs
- Visual.cs
- IsolatedStoragePermission.cs
- MouseBinding.cs
- WSSecureConversationFeb2005.cs
- ZeroOpNode.cs
- BigInt.cs
- MulticastIPAddressInformationCollection.cs
- BrowserCapabilitiesFactory.cs
- XPathAxisIterator.cs
- ScaleTransform3D.cs
- EntityConnectionStringBuilder.cs
- SimpleLine.cs
- SoundPlayer.cs
- RemoteWebConfigurationHostServer.cs
- TargetException.cs
- SizeIndependentAnimationStorage.cs
- SafeBitVector32.cs
- LogPolicy.cs
- Point4DConverter.cs
- InstanceKeyView.cs
- AmbientLight.cs
- ValidationError.cs
- COSERVERINFO.cs
- URLIdentityPermission.cs
- DataTrigger.cs
- CacheMemory.cs
- ToolStripMenuItem.cs
- WebExceptionStatus.cs
- DefaultDialogButtons.cs
- FrameworkPropertyMetadata.cs
- SHA1.cs
- FacetEnabledSchemaElement.cs
- DetailsViewInsertedEventArgs.cs
- GeometryHitTestParameters.cs
- QueueProcessor.cs
- CodeNamespace.cs
- ButtonRenderer.cs
- CanonicalXml.cs
- TextTrailingCharacterEllipsis.cs
- StringConverter.cs
- InstanceDataCollectionCollection.cs
- OutgoingWebResponseContext.cs
- VirtualDirectoryMappingCollection.cs
- BCryptSafeHandles.cs
- DetailsViewRow.cs
- AsyncStreamReader.cs
- NameSpaceExtractor.cs
- PageThemeBuildProvider.cs
- PropertyTabAttribute.cs
- BindUriHelper.cs
- TextEncodedRawTextWriter.cs
- HandlerFactoryWrapper.cs
- BidOverLoads.cs
- DataGridToolTip.cs
- WindowsStatusBar.cs
- OutputCacheSettingsSection.cs
- HtmlTitle.cs
- SafeNativeMethodsCLR.cs
- TranslateTransform3D.cs
- IndicShape.cs
- PtsHost.cs
- WebPartVerb.cs
- SchemaType.cs
- WeakReference.cs
- RawUIStateInputReport.cs
- Transactions.cs
- MultiBinding.cs