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
- DataPagerFieldItem.cs
- FixedSOMFixedBlock.cs
- typedescriptorpermission.cs
- SortFieldComparer.cs
- SelectionProcessor.cs
- InstanceHandleReference.cs
- CheckPair.cs
- NamedPipeTransportSecurity.cs
- XPathParser.cs
- RC2CryptoServiceProvider.cs
- FormsAuthenticationUserCollection.cs
- AdapterUtil.cs
- WorkflowMarkupSerializationProvider.cs
- EntryIndex.cs
- DefaultWorkflowSchedulerService.cs
- MainMenu.cs
- DetailsViewDeletedEventArgs.cs
- TypeSource.cs
- TransactionsSectionGroup.cs
- WebServiceData.cs
- XmlQueryType.cs
- StringPropertyBuilder.cs
- SiteMapNodeItemEventArgs.cs
- DataMemberFieldConverter.cs
- DataSysAttribute.cs
- Solver.cs
- DictionaryEntry.cs
- HttpListenerElement.cs
- DataList.cs
- HtmlProps.cs
- MatrixAnimationUsingPath.cs
- TokenBasedSet.cs
- IDReferencePropertyAttribute.cs
- XmlSignatureManifest.cs
- MenuAutomationPeer.cs
- Label.cs
- ServiceModelActivity.cs
- ConfigurationLockCollection.cs
- ResourceExpressionBuilder.cs
- InheritablePropertyChangeInfo.cs
- SHA1CryptoServiceProvider.cs
- GatewayDefinition.cs
- QilScopedVisitor.cs
- DependencyObject.cs
- RuleInfoComparer.cs
- WindowsListViewSubItem.cs
- ExpressionPrefixAttribute.cs
- HtmlTableCell.cs
- PointAnimationUsingKeyFrames.cs
- EditorZone.cs
- Utility.cs
- DetailsViewUpdateEventArgs.cs
- MailWebEventProvider.cs
- FaultBookmark.cs
- BridgeDataRecord.cs
- SqlCommandBuilder.cs
- WebPartMovingEventArgs.cs
- MLangCodePageEncoding.cs
- UnauthorizedAccessException.cs
- ThumbAutomationPeer.cs
- HwndSource.cs
- EntityClientCacheEntry.cs
- DataRecordInternal.cs
- DataGridViewImageColumn.cs
- XNodeNavigator.cs
- DecodeHelper.cs
- CommonRemoteMemoryBlock.cs
- NetworkInformationException.cs
- PopupRootAutomationPeer.cs
- HtmlHistory.cs
- CompiledQuery.cs
- StateManagedCollection.cs
- SystemIPv4InterfaceProperties.cs
- Command.cs
- PauseStoryboard.cs
- HttpFileCollectionBase.cs
- XmlSchemaComplexContentRestriction.cs
- QueryResponse.cs
- ResumeStoryboard.cs
- UpdateException.cs
- DecimalStorage.cs
- SecurityException.cs
- ConfigurationSchemaErrors.cs
- ObjectDataSourceDisposingEventArgs.cs
- WinHttpWebProxyFinder.cs
- ParserContext.cs
- DocComment.cs
- CanonicalXml.cs
- ClientConfigurationSystem.cs
- PrintDocument.cs
- HitTestResult.cs
- BrowserCapabilitiesFactoryBase.cs
- GridLength.cs
- HttpCachePolicyBase.cs
- Collection.cs
- HtmlTitle.cs
- DataViewManagerListItemTypeDescriptor.cs
- FramingChannels.cs
- TypeToken.cs
- ThreadAbortException.cs