Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / xsp / System / Web / UI / WebControls / FilteredDataSetHelper.cs / 5 / 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
- WebEventCodes.cs
- NativeMethods.cs
- StrongNameKeyPair.cs
- FigureHelper.cs
- SystemUnicastIPAddressInformation.cs
- ClaimComparer.cs
- DiagnosticTraceSchemas.cs
- NewArrayExpression.cs
- TemplateControlCodeDomTreeGenerator.cs
- InvokerUtil.cs
- AppDomainShutdownMonitor.cs
- TemplatedMailWebEventProvider.cs
- ClientScriptManager.cs
- FixUp.cs
- AttachedAnnotationChangedEventArgs.cs
- HierarchicalDataBoundControl.cs
- BaseTemplateBuildProvider.cs
- SpeechSeg.cs
- MarginsConverter.cs
- JpegBitmapEncoder.cs
- EntityDataSourceStatementEditorForm.cs
- Classification.cs
- UserPreference.cs
- AccessKeyManager.cs
- StateMachineAction.cs
- SmtpReplyReader.cs
- PageContent.cs
- RegistryDataKey.cs
- FileDialogPermission.cs
- ObjectHandle.cs
- ReliabilityContractAttribute.cs
- ReaderWriterLock.cs
- Bits.cs
- SrgsRule.cs
- CustomGrammar.cs
- Attributes.cs
- CatalogZoneBase.cs
- AutomationPeer.cs
- SuppressMergeCheckAttribute.cs
- XmlParserContext.cs
- XmlElement.cs
- Button.cs
- ClientSideQueueItem.cs
- SystemEvents.cs
- FormsAuthenticationTicket.cs
- ButtonPopupAdapter.cs
- XPathDocumentIterator.cs
- RankException.cs
- WizardPanelChangingEventArgs.cs
- ProfileGroupSettingsCollection.cs
- Crypto.cs
- _DynamicWinsockMethods.cs
- COM2IPerPropertyBrowsingHandler.cs
- QueryStringParameter.cs
- FixedBufferAttribute.cs
- QilList.cs
- _SecureChannel.cs
- FixedSOMFixedBlock.cs
- HotSpotCollection.cs
- BooleanToSelectiveScrollingOrientationConverter.cs
- EventLogPermissionAttribute.cs
- OdbcConnection.cs
- TracingConnectionListener.cs
- BamlRecordHelper.cs
- SessionStateUtil.cs
- SplitterCancelEvent.cs
- BaseTreeIterator.cs
- CorrelationManager.cs
- Fonts.cs
- webproxy.cs
- Monitor.cs
- ResourceKey.cs
- DrawingAttributes.cs
- Utils.cs
- XmlSchemaDocumentation.cs
- XsdDateTime.cs
- ImageUrlEditor.cs
- QilSortKey.cs
- DirectionalLight.cs
- Triplet.cs
- SharedStatics.cs
- CallSiteBinder.cs
- Msec.cs
- QilTernary.cs
- AdornerPresentationContext.cs
- StringBuilder.cs
- DecoderNLS.cs
- Padding.cs
- EmbeddedMailObject.cs
- LinqDataSourceUpdateEventArgs.cs
- SqlCacheDependency.cs
- CompilerResults.cs
- ObjectStateManager.cs
- TileBrush.cs
- ReplyChannel.cs
- HttpValueCollection.cs
- NameService.cs
- Directory.cs
- ColorMatrix.cs
- DecoderFallbackWithFailureFlag.cs