Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / DynamicData / DynamicData / DynamicFilterExpression.cs / 1305376 / DynamicFilterExpression.cs
using System.Linq.Expressions;
using System.Web.UI;
using System.Globalization;
using System.Diagnostics.CodeAnalysis;
using System.Linq;
#if ORYX_VNEXT
using Microsoft.Web.Data.UI.WebControls.Expressions;
using Microsoft.Web.Data.UI.WebControls;
#else
using System.Web.UI.WebControls.Expressions;
using System.Web.UI.WebControls;
#endif
namespace System.Web.DynamicData {
///
/// This is a Dynamic Data-specific extension of DataSourceExpression that works by forwarding the processing of an IQueryable to
/// a specialized control such as QueryableFilterRepeater or DynamicFilter.
///
public class DynamicFilterExpression : DataSourceExpression {
///
/// References the ID of a QueryableFilterRepeater or DynamicFilter control on the page.
///
[SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "ID", Justification = "This refers to a Control ID")]
public string ControlID { get; set; }
private IFilterExpressionProvider FilterExpressionProvider { get; set; }
public override void SetContext(Control owner, HttpContext context, IQueryableDataSource dataSource) {
base.SetContext(owner, context, dataSource);
FilterExpressionProvider = FindControl(Owner);
FilterExpressionProvider.Initialize(dataSource);
}
private IFilterExpressionProvider FindControl(Control control) {
var result = Misc.FindControl(control, ControlID) as IFilterExpressionProvider;
if (result == null) {
throw new InvalidOperationException(String.Format(CultureInfo.CurrentCulture, "The control '{0}' could not be found.", ControlID));
}
return result;
}
///
/// Delegates the processing of the source queryable to the control referenced by ControlID.
///
///
///
public override IQueryable GetQueryable(IQueryable source) {
IQueryable result = FilterExpressionProvider.GetQueryable(source);
return result;
}
}
}
// 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
- storagemappingitemcollection.viewdictionary.cs
- CodeConditionStatement.cs
- PkcsMisc.cs
- DBCSCodePageEncoding.cs
- ComplexTypeEmitter.cs
- IntranetCredentialPolicy.cs
- XPathPatternParser.cs
- Variant.cs
- ConfigurationValue.cs
- Expander.cs
- SourceCollection.cs
- _Semaphore.cs
- WindowsTooltip.cs
- ResourceDisplayNameAttribute.cs
- TopClause.cs
- DataListItemCollection.cs
- DrawingImage.cs
- OleDbException.cs
- GenerateHelper.cs
- PeerName.cs
- PreloadedPackages.cs
- QilDataSource.cs
- OpenTypeCommon.cs
- SafeNativeMethods.cs
- QueryGeneratorBase.cs
- CheckBoxFlatAdapter.cs
- WindowsComboBox.cs
- WindowAutomationPeer.cs
- TextTreeTextNode.cs
- XmlChildEnumerator.cs
- AdRotatorDesigner.cs
- AssociationTypeEmitter.cs
- SemanticResultKey.cs
- NetworkInterface.cs
- Icon.cs
- MarkupExtensionParser.cs
- Brush.cs
- ComboBoxAutomationPeer.cs
- SystemMulticastIPAddressInformation.cs
- HostingEnvironmentException.cs
- DateTimeConverter.cs
- unsafeIndexingFilterStream.cs
- ExpressionBuilderCollection.cs
- XPathCompileException.cs
- SequenceNumber.cs
- WebCategoryAttribute.cs
- HttpServerVarsCollection.cs
- XslCompiledTransform.cs
- ViewBox.cs
- RouteData.cs
- HttpWebRequest.cs
- BindMarkupExtensionSerializer.cs
- Graphics.cs
- ParameterCollection.cs
- RegexWorker.cs
- TransformDescriptor.cs
- SelectionRangeConverter.cs
- ObjectCloneHelper.cs
- XmlSchemaAll.cs
- SimpleExpression.cs
- ping.cs
- ControlBuilder.cs
- RepeaterItemCollection.cs
- TextDecoration.cs
- QuerySettings.cs
- PreloadedPackages.cs
- Converter.cs
- FullTextBreakpoint.cs
- XamlInt32CollectionSerializer.cs
- InheritanceUI.cs
- ReadOnlyCollectionBase.cs
- ModifiableIteratorCollection.cs
- ListControlBuilder.cs
- TransformerInfoCollection.cs
- MapPathBasedVirtualPathProvider.cs
- XmlILStorageConverter.cs
- DataGridHeadersVisibilityToVisibilityConverter.cs
- ResourceDisplayNameAttribute.cs
- FunctionNode.cs
- SoapObjectWriter.cs
- DocumentReferenceCollection.cs
- TargetException.cs
- COM2PictureConverter.cs
- PieceNameHelper.cs
- HtmlUtf8RawTextWriter.cs
- PinnedBufferMemoryStream.cs
- DispatchWrapper.cs
- XmlQuerySequence.cs
- MultiTrigger.cs
- RuleAction.cs
- ILGen.cs
- CapabilitiesAssignment.cs
- Fault.cs
- TdsEnums.cs
- RemoteWebConfigurationHostServer.cs
- EntityContainerEmitter.cs
- TextProperties.cs
- SQLSingleStorage.cs
- Int16.cs
- BuildProvidersCompiler.cs