Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / xsp / System / Web / UI / WebControls / FilteredDataSetHelper.cs / 1 / 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
- AuthenticationConfig.cs
- NativeActivityTransactionContext.cs
- WorkflowDesignerMessageFilter.cs
- Int32Converter.cs
- ObjectCloneHelper.cs
- EncryptedPackageFilter.cs
- ScaleTransform3D.cs
- StandardOleMarshalObject.cs
- NumericUpDownAccelerationCollection.cs
- RelatedView.cs
- EventSetter.cs
- DataListAutoFormat.cs
- Events.cs
- TemplateBindingExpression.cs
- WindowsAuthenticationModule.cs
- PerfService.cs
- CompiledAction.cs
- PropertyFilterAttribute.cs
- XmlDataImplementation.cs
- MatcherBuilder.cs
- Line.cs
- ScriptDescriptor.cs
- ChangeConflicts.cs
- StringUtil.cs
- EventLogPermission.cs
- DrawingState.cs
- ExtenderProvidedPropertyAttribute.cs
- DBAsyncResult.cs
- ActivityBindForm.cs
- SafeSecurityHandles.cs
- RSAOAEPKeyExchangeDeformatter.cs
- ErrorWrapper.cs
- ManagementObjectCollection.cs
- Pair.cs
- FormsAuthenticationCredentials.cs
- RadioButtonList.cs
- UpdatePanel.cs
- remotingproxy.cs
- HWStack.cs
- EditingScopeUndoUnit.cs
- DataColumnMappingCollection.cs
- Decimal.cs
- ObjectListShowCommandsEventArgs.cs
- AnonymousIdentificationSection.cs
- GenericEnumConverter.cs
- WebPartCatalogCloseVerb.cs
- ObjectParameterCollection.cs
- SmtpReplyReaderFactory.cs
- wgx_sdk_version.cs
- XmlSerializerFactory.cs
- CreateUserWizard.cs
- ApplicationTrust.cs
- WsiProfilesElementCollection.cs
- SetStateEventArgs.cs
- PartialClassGenerationTask.cs
- Track.cs
- WizardForm.cs
- MappingModelBuildProvider.cs
- VariableAction.cs
- CaseInsensitiveComparer.cs
- InstanceDataCollection.cs
- ObjectStateEntryDbDataRecord.cs
- NamedPipeTransportSecurity.cs
- PasswordPropertyTextAttribute.cs
- FormViewUpdateEventArgs.cs
- ProcessHostFactoryHelper.cs
- Funcletizer.cs
- DbProviderFactoriesConfigurationHandler.cs
- HatchBrush.cs
- XmlAttributeProperties.cs
- TdsParserStaticMethods.cs
- InvokeBinder.cs
- XPathMessageFilter.cs
- TextServicesDisplayAttribute.cs
- KeyEventArgs.cs
- EntityChangedParams.cs
- RegistryHandle.cs
- SqlUserDefinedTypeAttribute.cs
- MasterPageParser.cs
- TagElement.cs
- TargetControlTypeAttribute.cs
- IndicFontClient.cs
- OledbConnectionStringbuilder.cs
- RequestCacheValidator.cs
- FaultHandlingFilter.cs
- ThreadStartException.cs
- StoryFragments.cs
- MouseBinding.cs
- AccessViolationException.cs
- DataGridViewControlCollection.cs
- TrackingExtract.cs
- SpanIndex.cs
- DefaultValidator.cs
- UriTemplateDispatchFormatter.cs
- RowToFieldTransformer.cs
- _Events.cs
- UIElement.cs
- WebPartDisplayModeCollection.cs
- DialogResultConverter.cs
- TemplatedWizardStep.cs