Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Extensions / UI / WebControls / Expressions / DataSourceExpressionCollection.cs / 1305376 / DataSourceExpressionCollection.cs
#if ORYX_VNEXT namespace Microsoft.Web.Data.UI.WebControls.Expressions { using System; #else namespace System.Web.UI.WebControls.Expressions { #endif using System.Collections; using System.Collections.ObjectModel; using System.Diagnostics.CodeAnalysis; using System.Web; using System.Web.UI; public class DataSourceExpressionCollection : StateManagedCollection { private IQueryableDataSource _dataSource; private static readonly Type[] knownTypes = new Type[] { typeof(SearchExpression), typeof(MethodExpression), typeof(OrderByExpression), typeof(RangeExpression), typeof(PropertyExpression), typeof(CustomExpression), }; public HttpContext Context { get; private set; } public Control Owner { get; private set; } public DataSourceExpression this[int index] { get { return (DataSourceExpression)((IList)this)[index]; } set { ((IList)this)[index] = value; } } // Allows for nested expression blocks to be initilaized after the fact internal void SetContext(Control owner, HttpContext context, IQueryableDataSource dataSource) { Owner = owner; Context = context; _dataSource = dataSource; foreach (DataSourceExpression expression in this) { expression.SetContext(owner, context, _dataSource); } } public void Add(DataSourceExpression expression) { ((IList)this).Add(expression); } protected override object CreateKnownType(int index) { switch (index) { case 0: return new SearchExpression(); case 1: return new MethodExpression(); case 2: return new OrderByExpression(); case 3: return new RangeExpression(); case 4: return new PropertyExpression(); case 5: return new CustomExpression(); default: throw new ArgumentOutOfRangeException("index"); } } public void CopyTo(DataSourceExpression[] expressionArray, int index) { base.CopyTo(expressionArray, index); } public void Contains(DataSourceExpression expression) { ((IList)this).Contains(expression); } protected override Type[] GetKnownTypes() { return knownTypes; } public int IndexOf(DataSourceExpression expression) { return ((IList)this).IndexOf(expression); } public void Insert(int index, DataSourceExpression expression) { ((IList)this).Insert(index, expression); } public void Remove(DataSourceExpression expression) { ((IList)this).Remove(expression); } public void RemoveAt(int index) { ((IList)this).RemoveAt(index); } protected override void SetDirtyObject(object o) { ((DataSourceExpression)o).SetDirty(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. #if ORYX_VNEXT namespace Microsoft.Web.Data.UI.WebControls.Expressions { using System; #else namespace System.Web.UI.WebControls.Expressions { #endif using System.Collections; using System.Collections.ObjectModel; using System.Diagnostics.CodeAnalysis; using System.Web; using System.Web.UI; public class DataSourceExpressionCollection : StateManagedCollection { private IQueryableDataSource _dataSource; private static readonly Type[] knownTypes = new Type[] { typeof(SearchExpression), typeof(MethodExpression), typeof(OrderByExpression), typeof(RangeExpression), typeof(PropertyExpression), typeof(CustomExpression), }; public HttpContext Context { get; private set; } public Control Owner { get; private set; } public DataSourceExpression this[int index] { get { return (DataSourceExpression)((IList)this)[index]; } set { ((IList)this)[index] = value; } } // Allows for nested expression blocks to be initilaized after the fact internal void SetContext(Control owner, HttpContext context, IQueryableDataSource dataSource) { Owner = owner; Context = context; _dataSource = dataSource; foreach (DataSourceExpression expression in this) { expression.SetContext(owner, context, _dataSource); } } public void Add(DataSourceExpression expression) { ((IList)this).Add(expression); } protected override object CreateKnownType(int index) { switch (index) { case 0: return new SearchExpression(); case 1: return new MethodExpression(); case 2: return new OrderByExpression(); case 3: return new RangeExpression(); case 4: return new PropertyExpression(); case 5: return new CustomExpression(); default: throw new ArgumentOutOfRangeException("index"); } } public void CopyTo(DataSourceExpression[] expressionArray, int index) { base.CopyTo(expressionArray, index); } public void Contains(DataSourceExpression expression) { ((IList)this).Contains(expression); } protected override Type[] GetKnownTypes() { return knownTypes; } public int IndexOf(DataSourceExpression expression) { return ((IList)this).IndexOf(expression); } public void Insert(int index, DataSourceExpression expression) { ((IList)this).Insert(index, expression); } public void Remove(DataSourceExpression expression) { ((IList)this).Remove(expression); } public void RemoveAt(int index) { ((IList)this).RemoveAt(index); } protected override void SetDirtyObject(object o) { ((DataSourceExpression)o).SetDirty(); } } } // 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
- DoubleCollection.cs
- WebHttpBindingCollectionElement.cs
- RulePatternOps.cs
- MimeMapping.cs
- PersonalizationProviderHelper.cs
- ReflectPropertyDescriptor.cs
- ServiceDeploymentInfo.cs
- TimeSpan.cs
- OdbcReferenceCollection.cs
- basecomparevalidator.cs
- VirtualPathProvider.cs
- arc.cs
- WorkBatch.cs
- SemanticResultValue.cs
- FunctionQuery.cs
- TypeTypeConverter.cs
- PropertyNames.cs
- HandledMouseEvent.cs
- AnnotationComponentChooser.cs
- XmlILIndex.cs
- PropertyStore.cs
- Vector3DIndependentAnimationStorage.cs
- ComplexObject.cs
- LayoutUtils.cs
- TCEAdapterGenerator.cs
- Translator.cs
- WindowInteractionStateTracker.cs
- Trace.cs
- OperandQuery.cs
- RegexCode.cs
- FixedSOMLineCollection.cs
- MetadataItemCollectionFactory.cs
- WpfXamlType.cs
- AssociationSetMetadata.cs
- WebPartVerbCollection.cs
- SystemColorTracker.cs
- TimeoutValidationAttribute.cs
- InlineCategoriesDocument.cs
- ConstraintStruct.cs
- KeySpline.cs
- RandomDelayQueuedSendsAsyncResult.cs
- WindowInteractionStateTracker.cs
- UnsafeNativeMethods.cs
- XPathNavigator.cs
- NamespaceExpr.cs
- RuleSetReference.cs
- EFAssociationProvider.cs
- FileDataSource.cs
- RunClient.cs
- IOThreadScheduler.cs
- TextPatternIdentifiers.cs
- FragmentNavigationEventArgs.cs
- Enum.cs
- ExternalCalls.cs
- XmlSchemaAttributeGroup.cs
- Asn1IntegerConverter.cs
- TextEditorContextMenu.cs
- Matrix3DConverter.cs
- InstallerTypeAttribute.cs
- NamedObjectList.cs
- PropertyInfoSet.cs
- DependencyProperty.cs
- TransformPattern.cs
- FixedFlowMap.cs
- AuthenticationModuleElementCollection.cs
- Pen.cs
- TextPattern.cs
- XmlEntity.cs
- RestrictedTransactionalPackage.cs
- SafePEFileHandle.cs
- ResizeGrip.cs
- DiscoveryMessageSequenceCD1.cs
- SecUtil.cs
- SqlTriggerContext.cs
- Utils.cs
- Base64Decoder.cs
- ConnectionPoolManager.cs
- ApplicationGesture.cs
- FontStretchConverter.cs
- BodyWriter.cs
- SchemaImporterExtension.cs
- Underline.cs
- BinaryFormatterWriter.cs
- EnvironmentPermission.cs
- BitmapFrameEncode.cs
- WebConfigurationManager.cs
- _emptywebproxy.cs
- UnionExpr.cs
- XmlILOptimizerVisitor.cs
- TemplateColumn.cs
- AssemblyAttributes.cs
- PreviewKeyDownEventArgs.cs
- ActivityExecutorOperation.cs
- HtmlEncodedRawTextWriter.cs
- SqlSelectStatement.cs
- CallContext.cs
- ParseHttpDate.cs
- MetadataUtilsSmi.cs
- UserNameServiceElement.cs
- PageThemeBuildProvider.cs