Code:
/ FX-1434 / FX-1434 / 1.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
- Exceptions.cs
- EntitySqlQueryBuilder.cs
- DeclaredTypeValidator.cs
- COM2ICategorizePropertiesHandler.cs
- XPathNodeHelper.cs
- WindowsListViewGroupHelper.cs
- DelegateHelpers.cs
- SpeakCompletedEventArgs.cs
- ProfileSection.cs
- TextTreeDeleteContentUndoUnit.cs
- TextDocumentView.cs
- ToolboxItemSnapLineBehavior.cs
- TextTreePropertyUndoUnit.cs
- Focus.cs
- Models.cs
- BinaryParser.cs
- SafeRegistryHandle.cs
- InteropBitmapSource.cs
- WeakHashtable.cs
- ItemCollectionEditor.cs
- sqlstateclientmanager.cs
- RootBrowserWindowAutomationPeer.cs
- WindowShowOrOpenTracker.cs
- Blend.cs
- ErrorWrapper.cs
- EncodingNLS.cs
- CodeIterationStatement.cs
- sqlmetadatafactory.cs
- DataSourceControlBuilder.cs
- XmlWrappingReader.cs
- VectorConverter.cs
- XsltArgumentList.cs
- NativeCompoundFileAPIs.cs
- ObjectItemAssemblyLoader.cs
- UnescapedXmlDiagnosticData.cs
- SqlFacetAttribute.cs
- XamlWriter.cs
- RouteTable.cs
- TextRangeAdaptor.cs
- WSHttpBindingBase.cs
- SqlDataSourceParameterParser.cs
- DataServiceRequest.cs
- ToolBar.cs
- X500Name.cs
- DbXmlEnabledProviderManifest.cs
- UserPersonalizationStateInfo.cs
- _CacheStreams.cs
- X509Certificate2.cs
- WebPartZoneBase.cs
- GridViewCommandEventArgs.cs
- GroupDescription.cs
- ExpandCollapseProviderWrapper.cs
- TextEditorMouse.cs
- FixedHyperLink.cs
- Parser.cs
- Matrix.cs
- TerminateDesigner.cs
- NeutralResourcesLanguageAttribute.cs
- basemetadatamappingvisitor.cs
- HttpServerChannel.cs
- EventSinkHelperWriter.cs
- SHA1Managed.cs
- RequestCacheManager.cs
- XmlSchemaAny.cs
- ToolStripDropDownButton.cs
- TimelineClockCollection.cs
- DefaultShape.cs
- EntityDesignerBuildProvider.cs
- DataGridColumnCollection.cs
- ServicesUtilities.cs
- KeyboardDevice.cs
- CroppedBitmap.cs
- HeaderPanel.cs
- AutomationIdentifierGuids.cs
- recordstatescratchpad.cs
- AdPostCacheSubstitution.cs
- XmlNamespaceMappingCollection.cs
- SystemWebSectionGroup.cs
- SerializerDescriptor.cs
- Win32.cs
- DBConnectionString.cs
- Vector3DKeyFrameCollection.cs
- ParameterEditorUserControl.cs
- Window.cs
- InvalidWorkflowException.cs
- WebPartConnectionsDisconnectVerb.cs
- Message.cs
- DataGridViewSelectedColumnCollection.cs
- InvalidOleVariantTypeException.cs
- BreakRecordTable.cs
- FakeModelPropertyImpl.cs
- DocumentViewerBase.cs
- OperatorExpressions.cs
- DataGridViewUtilities.cs
- PersonalizablePropertyEntry.cs
- BinaryWriter.cs
- SourceFileBuildProvider.cs
- AutoCompleteStringCollection.cs
- HtmlHead.cs
- ZipFileInfo.cs