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
- AppDomainShutdownMonitor.cs
- Action.cs
- PrivateFontCollection.cs
- OleDbParameter.cs
- HtmlWindow.cs
- FtpRequestCacheValidator.cs
- AffineTransform3D.cs
- OutputWindow.cs
- manifestimages.cs
- SqlStatistics.cs
- CompilationUtil.cs
- CodeLabeledStatement.cs
- UInt64Storage.cs
- SigningCredentials.cs
- ValidationErrorEventArgs.cs
- ProvidePropertyAttribute.cs
- TheQuery.cs
- SelectionHighlightInfo.cs
- SchemaElement.cs
- EventRoute.cs
- RenderingEventArgs.cs
- Help.cs
- TransformGroup.cs
- SectionRecord.cs
- TabletCollection.cs
- URLIdentityPermission.cs
- MenuCommand.cs
- XPathNavigatorReader.cs
- XmlTextEncoder.cs
- MetadataArtifactLoaderXmlReaderWrapper.cs
- XmlConvert.cs
- CodeIdentifiers.cs
- DropDownList.cs
- BindingsCollection.cs
- WebSysDefaultValueAttribute.cs
- FileLoadException.cs
- sqlpipe.cs
- TraceLevelStore.cs
- DescendantOverDescendantQuery.cs
- Quaternion.cs
- PageParserFilter.cs
- PropertyPathConverter.cs
- EntityContainerEntitySet.cs
- MultiBindingExpression.cs
- PolicyValidationException.cs
- FrameworkEventSource.cs
- SoapMessage.cs
- BitSet.cs
- XmlWrappingWriter.cs
- ReferenceConverter.cs
- LayoutInformation.cs
- ForEachAction.cs
- OrderByExpression.cs
- CodeEventReferenceExpression.cs
- SqlMethodCallConverter.cs
- MemberRelationshipService.cs
- BoundPropertyEntry.cs
- TextParagraph.cs
- StreamReader.cs
- COSERVERINFO.cs
- SqlMethodCallConverter.cs
- TypeResolvingOptions.cs
- HtmlInputFile.cs
- DataBoundControl.cs
- BooleanFunctions.cs
- FixedSOMTableCell.cs
- SchemaTableOptionalColumn.cs
- XmlSchemaAll.cs
- RelationshipSet.cs
- XmlSerializerNamespaces.cs
- SettingsContext.cs
- CustomPopupPlacement.cs
- GeometryCollection.cs
- UDPClient.cs
- DesignObjectWrapper.cs
- TextContainerChangedEventArgs.cs
- StopStoryboard.cs
- StdValidatorsAndConverters.cs
- HitTestResult.cs
- Columns.cs
- StorageSetMapping.cs
- InputProcessorProfilesLoader.cs
- UnsupportedPolicyOptionsException.cs
- HwndMouseInputProvider.cs
- WindowsFont.cs
- CachedCompositeFamily.cs
- EmptyQuery.cs
- MenuCommands.cs
- securitycriticaldataClass.cs
- SqlUserDefinedAggregateAttribute.cs
- ToolBarDesigner.cs
- DesignerForm.cs
- SqlProcedureAttribute.cs
- StringFreezingAttribute.cs
- RegexParser.cs
- DBCommand.cs
- SignatureHelper.cs
- _RequestLifetimeSetter.cs
- DropSourceBehavior.cs
- WSDualHttpBinding.cs