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
- Int32Converter.cs
- ZipIOZip64EndOfCentralDirectoryLocatorBlock.cs
- NameScope.cs
- ListenerUnsafeNativeMethods.cs
- WindowsScrollBarBits.cs
- DisplayMemberTemplateSelector.cs
- SynchronousSendBindingElement.cs
- ErrorWrapper.cs
- Label.cs
- WeakHashtable.cs
- CqlGenerator.cs
- SerializationObjectManager.cs
- MethodResolver.cs
- CategoryGridEntry.cs
- DbConnectionPoolGroup.cs
- CodeCatchClauseCollection.cs
- TraceData.cs
- CqlIdentifiers.cs
- WebControlsSection.cs
- TraceHandlerErrorFormatter.cs
- PackWebRequest.cs
- MdiWindowListStrip.cs
- FormsAuthenticationUserCollection.cs
- InputDevice.cs
- OutputCacheModule.cs
- COAUTHIDENTITY.cs
- MailBnfHelper.cs
- FontUnit.cs
- ChildrenQuery.cs
- TrustDriver.cs
- DoubleLinkListEnumerator.cs
- ContractMethodInfo.cs
- Slider.cs
- ThreadBehavior.cs
- XmlText.cs
- CultureTable.cs
- EUCJPEncoding.cs
- CommunicationException.cs
- MembershipSection.cs
- DataGridViewLinkCell.cs
- xmlfixedPageInfo.cs
- LogConverter.cs
- Viewport3DAutomationPeer.cs
- RSAOAEPKeyExchangeDeformatter.cs
- InputLangChangeRequestEvent.cs
- TextWriterTraceListener.cs
- TrackingMemoryStream.cs
- HandleCollector.cs
- GridViewColumn.cs
- XmlDocumentSchema.cs
- HeaderedContentControl.cs
- EntityProviderServices.cs
- ComponentDispatcher.cs
- XmlArrayItemAttribute.cs
- TextElement.cs
- MailDefinition.cs
- XmlSchemaSimpleContent.cs
- NetMsmqBinding.cs
- AllMembershipCondition.cs
- ComponentDispatcher.cs
- DatePickerTextBox.cs
- DirectoryObjectSecurity.cs
- TypeConverter.cs
- TablePattern.cs
- TrackingMemoryStream.cs
- UnsafePeerToPeerMethods.cs
- ExtensionFile.cs
- Line.cs
- Label.cs
- WSDualHttpBindingElement.cs
- AsymmetricCryptoHandle.cs
- InputBindingCollection.cs
- SymbolTable.cs
- GraphicsContext.cs
- Solver.cs
- HostSecurityManager.cs
- SerializationInfo.cs
- BooleanToVisibilityConverter.cs
- EncryptedPackageFilter.cs
- CfgParser.cs
- Object.cs
- BaseCodeDomTreeGenerator.cs
- TraceContextRecord.cs
- MessageFilter.cs
- ObjectRef.cs
- QilVisitor.cs
- StringSource.cs
- PermissionAttributes.cs
- WebPartDescription.cs
- SerializerWriterEventHandlers.cs
- PeerReferralPolicy.cs
- SponsorHelper.cs
- ObjectDataSourceSelectingEventArgs.cs
- ContentElement.cs
- Message.cs
- recordstatescratchpad.cs
- WebConfigurationHostFileChange.cs
- UdpTransportSettingsElement.cs
- ActivityExecutorSurrogate.cs
- WeakReferenceEnumerator.cs