Code:
/ 4.0 / 4.0 / 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. //------------------------------------------------------------------------------ //// 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
- TaskFileService.cs
- InvokeSchedule.cs
- NavigationProperty.cs
- CodeIdentifiers.cs
- XmlDeclaration.cs
- ContainerParaClient.cs
- SqlCommandSet.cs
- X509CertificateChain.cs
- MetadataFile.cs
- NavigationPropertyAccessor.cs
- TreeNodeBinding.cs
- HierarchicalDataSourceConverter.cs
- DocumentSignatureManager.cs
- AssociationSet.cs
- DataFormats.cs
- OracleBFile.cs
- UpdatableGenericsFeature.cs
- DataViewSettingCollection.cs
- XmlAttributeOverrides.cs
- StrokeIntersection.cs
- Timer.cs
- WpfMemberInvoker.cs
- WebMessageFormatHelper.cs
- DataMisalignedException.cs
- TextElementEnumerator.cs
- Vertex.cs
- Thread.cs
- LambdaExpression.cs
- HyperLinkField.cs
- Substitution.cs
- ParagraphVisual.cs
- RegexFCD.cs
- DataPagerFieldItem.cs
- TextParagraphView.cs
- BrushConverter.cs
- Formatter.cs
- ObjectQueryState.cs
- EntityDataSourceValidationException.cs
- PersonalizableAttribute.cs
- DefaultMemberAttribute.cs
- AppDomainInstanceProvider.cs
- AddInServer.cs
- ServiceDescriptions.cs
- GraphicsContainer.cs
- VersionValidator.cs
- LogSwitch.cs
- InputMethodStateTypeInfo.cs
- BaseResourcesBuildProvider.cs
- BatchParser.cs
- CodePropertyReferenceExpression.cs
- SiteMapNode.cs
- ThousandthOfEmRealPoints.cs
- ModulesEntry.cs
- HtmlEmptyTagControlBuilder.cs
- SrgsElementList.cs
- AvTrace.cs
- Double.cs
- ListViewItemSelectionChangedEvent.cs
- Socket.cs
- ResourceExpression.cs
- MetadataItemEmitter.cs
- PrintPageEvent.cs
- Lasso.cs
- DuplicateWaitObjectException.cs
- ResetableIterator.cs
- ProcessHostServerConfig.cs
- TempFiles.cs
- OracleMonthSpan.cs
- ToolStripDropDownMenu.cs
- XamlClipboardData.cs
- RequestResizeEvent.cs
- FactoryGenerator.cs
- AspNetHostingPermission.cs
- WindowsHyperlink.cs
- EntityDataSourceUtil.cs
- Brush.cs
- LambdaExpression.cs
- ValidatorUtils.cs
- SystemException.cs
- CompiledQuery.cs
- SortKey.cs
- RsaEndpointIdentity.cs
- RijndaelManaged.cs
- WeakReference.cs
- LogoValidationException.cs
- ZoomComboBox.cs
- BinaryUtilClasses.cs
- BitStack.cs
- CryptoHandle.cs
- Win32SafeHandles.cs
- HyperlinkAutomationPeer.cs
- StreamWriter.cs
- DoubleAnimationClockResource.cs
- Thread.cs
- TextSpanModifier.cs
- TextEncodedRawTextWriter.cs
- MouseButton.cs
- Maps.cs
- MetadataFile.cs
- SqlUnionizer.cs