Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Core / Microsoft / Scripting / Ast / MemberExpression.cs / 1305376 / MemberExpression.cs
/* **************************************************************************** * * Copyright (c) Microsoft Corporation. * * This source code is subject to terms and conditions of the Microsoft Public License. A * copy of the license can be found in the License.html file at the root of this distribution. If * you cannot locate the Microsoft Public License, please send an email to * dlr@microsoft.com. By using this source code in any fashion, you are agreeing to be bound * by the terms of the Microsoft Public License. * * You must not remove this notice, or any other, from this software. * * * ***************************************************************************/ using System.Diagnostics; using System.Dynamic.Utils; using System.Reflection; #if SILVERLIGHT using System.Core; #endif namespace System.Linq.Expressions { ////// Represents accessing a field or property. /// #if !SILVERLIGHT [DebuggerTypeProxy(typeof(Expression.MemberExpressionProxy))] #endif public class MemberExpression : Expression { private readonly Expression _expression; ////// Gets the field or property to be accessed. /// public MemberInfo Member { get { return GetMember(); } } ////// Gets the containing object of the field or property. /// public Expression Expression { get { return _expression; } } // param order: factories args in order, then other args internal MemberExpression(Expression expression) { _expression = expression; } internal static MemberExpression Make(Expression expression, MemberInfo member) { if (member.MemberType == MemberTypes.Field) { FieldInfo fi = (FieldInfo)member; return new FieldExpression(expression, fi); } else { PropertyInfo pi = (PropertyInfo)member; return new PropertyExpression(expression, pi); } } ////// Returns the node type of this ///. (Inherited from .) /// The public sealed override ExpressionType NodeType { get { return ExpressionType.MemberAccess; } } internal virtual MemberInfo GetMember() { throw ContractUtils.Unreachable; } ///that represents this expression. /// Dispatches to the specific visit method for this node type. /// protected internal override Expression Accept(ExpressionVisitor visitor) { return visitor.VisitMember(this); } ////// Creates a new expression that is like this one, but using the /// supplied children. If all of the children are the same, it will /// return this expression. /// /// Theproperty of the result. /// This expression if no children changed, or an expression with the updated children. public MemberExpression Update(Expression expression) { if (expression == Expression) { return this; } return Expression.MakeMemberAccess(expression, Member); } } internal class FieldExpression : MemberExpression { private readonly FieldInfo _field; public FieldExpression(Expression expression, FieldInfo member) : base(expression) { _field = member; } internal override MemberInfo GetMember() { return _field; } public sealed override Type Type { get { return _field.FieldType; } } } internal class PropertyExpression : MemberExpression { private readonly PropertyInfo _property; public PropertyExpression(Expression expression, PropertyInfo member) : base(expression) { _property = member; } internal override MemberInfo GetMember() { return _property; } public sealed override Type Type { get { return _property.PropertyType; } } } public partial class Expression { #region Field ////// Creates a /// The containing object of the field. This can be null for static fields. /// The field to be accessed. ///accessing a field. /// The created [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1719:ParameterNamesShouldNotMatchMemberNames")] public static MemberExpression Field(Expression expression, FieldInfo field) { ContractUtils.RequiresNotNull(field, "field"); if (field.IsStatic) { if (expression != null) throw new ArgumentException(Strings.OnlyStaticFieldsHaveNullInstance, "expression"); } else { if (expression == null) throw new ArgumentException(Strings.OnlyStaticFieldsHaveNullInstance, "field"); RequiresCanRead(expression, "expression"); if (!TypeUtils.AreReferenceAssignable(field.DeclaringType, expression.Type)) { throw Error.FieldInfoNotDefinedForType(field.DeclaringType, field.Name, expression.Type); } } return MemberExpression.Make(expression, field); } ///. /// Creates a /// The containing object of the field. This can be null for static fields. /// The field to be accessed. ///accessing a field. /// The created public static MemberExpression Field(Expression expression, string fieldName) { RequiresCanRead(expression, "expression"); // bind to public names first FieldInfo fi = expression.Type.GetField(fieldName, BindingFlags.Instance | BindingFlags.Public | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); if (fi == null) { fi = expression.Type.GetField(fieldName, BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); } if (fi == null) { throw Error.InstanceFieldNotDefinedForType(fieldName, expression.Type); } return Expression.Field(expression, fi); } ///. /// Creates a /// The containing object of the field. This can be null for static fields. /// Theaccessing a field. /// containing the field. /// The field to be accessed. /// The created [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1719:ParameterNamesShouldNotMatchMemberNames")] public static MemberExpression Field(Expression expression, Type type, string fieldName) { ContractUtils.RequiresNotNull(type, "type"); // bind to public names first FieldInfo fi = type.GetField(fieldName, BindingFlags.Static | BindingFlags.Instance | BindingFlags.Public | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); if (fi == null) { fi = type.GetField(fieldName, BindingFlags.Static | BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); } if (fi == null) { throw Error.FieldNotDefinedForType(fieldName, type); } return Expression.Field(expression, fi); } #endregion #region Property ///. /// Creates a /// The containing object of the property. This can be null for static properties. /// The property to be accessed. ///accessing a property. /// The created public static MemberExpression Property(Expression expression, string propertyName) { RequiresCanRead(expression, "expression"); ContractUtils.RequiresNotNull(propertyName, "propertyName"); // bind to public names first PropertyInfo pi = expression.Type.GetProperty(propertyName, BindingFlags.Instance | BindingFlags.Public | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); if (pi == null) { pi = expression.Type.GetProperty(propertyName, BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); } if (pi == null) { throw Error.InstancePropertyNotDefinedForType(propertyName, expression.Type); } return Property(expression, pi); } ///. /// Creates a /// The containing object of the property. This can be null for static properties. /// Theaccessing a property. /// containing the property. /// The property to be accessed. /// The created public static MemberExpression Property(Expression expression, Type type, string propertyName) { ContractUtils.RequiresNotNull(type, "type"); ContractUtils.RequiresNotNull(propertyName, "propertyName"); // bind to public names first PropertyInfo pi = type.GetProperty(propertyName, BindingFlags.Instance | BindingFlags.Static | BindingFlags.Public | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); if (pi == null) { pi = type.GetProperty(propertyName, BindingFlags.Static | BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); } if (pi == null) { throw Error.PropertyNotDefinedForType(propertyName, type); } return Property(expression, pi); } ///. /// Creates a /// The containing object of the property. This can be null for static properties. /// The property to be accessed. ///accessing a property. /// The created [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1719:ParameterNamesShouldNotMatchMemberNames")] public static MemberExpression Property(Expression expression, PropertyInfo property) { ContractUtils.RequiresNotNull(property, "property"); MethodInfo mi = property.GetGetMethod(true) ?? property.GetSetMethod(true); if (mi == null) { throw Error.PropertyDoesNotHaveAccessor(property); } if (mi.IsStatic) { if (expression != null) throw new ArgumentException(Strings.OnlyStaticPropertiesHaveNullInstance, "expression"); } else { if (expression == null) throw new ArgumentException(Strings.OnlyStaticPropertiesHaveNullInstance, "property"); RequiresCanRead(expression, "expression"); if (!TypeUtils.IsValidInstanceType(property, expression.Type)) { throw Error.PropertyNotDefinedForType(property, expression.Type); } } return MemberExpression.Make(expression, property); } ///. /// Creates a /// The containing object of the property. This can be null for static properties. /// An accessor method of the property to be accessed. ///accessing a property. /// The created public static MemberExpression Property(Expression expression, MethodInfo propertyAccessor) { ContractUtils.RequiresNotNull(propertyAccessor, "propertyAccessor"); ValidateMethodInfo(propertyAccessor); return Property(expression, GetProperty(propertyAccessor)); } private static PropertyInfo GetProperty(MethodInfo mi) { Type type = mi.DeclaringType; BindingFlags flags = BindingFlags.Public | BindingFlags.NonPublic; flags |= (mi.IsStatic) ? BindingFlags.Static : BindingFlags.Instance; PropertyInfo[] props = type.GetProperties(flags); foreach (PropertyInfo pi in props) { if (pi.CanRead && CheckMethod(mi, pi.GetGetMethod(true))) { return pi; } if (pi.CanWrite && CheckMethod(mi, pi.GetSetMethod(true))) { return pi; } } throw Error.MethodNotPropertyAccessor(mi.DeclaringType, mi.Name); } private static bool CheckMethod(MethodInfo method, MethodInfo propertyMethod) { if (method == propertyMethod) { return true; } // If the type is an interface then the handle for the method got by the compiler will not be the // same as that returned by reflection. // Check for this condition and try and get the method from reflection. Type type = method.DeclaringType; if (type.IsInterface && method.Name == propertyMethod.Name && type.GetMethod(method.Name) == propertyMethod) { return true; } return false; } #endregion ///. /// Creates a /// The containing object of the member. This can be null for static members. /// The member to be accessed. ///accessing a property or field. /// The created public static MemberExpression PropertyOrField(Expression expression, string propertyOrFieldName) { RequiresCanRead(expression, "expression"); // bind to public names first PropertyInfo pi = expression.Type.GetProperty(propertyOrFieldName, BindingFlags.Instance | BindingFlags.Public | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); if (pi != null) return Property(expression, pi); FieldInfo fi = expression.Type.GetField(propertyOrFieldName, BindingFlags.Instance | BindingFlags.Public | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); if (fi != null) return Field(expression, fi); pi = expression.Type.GetProperty(propertyOrFieldName, BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); if (pi != null) return Property(expression, pi); fi = expression.Type.GetField(propertyOrFieldName, BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); if (fi != null) return Field(expression, fi); throw Error.NotAMemberOfType(propertyOrFieldName, expression.Type); } ///. /// Creates a /// The containing object of the member. This can be null for static members. /// The member to be accessed. ///accessing a property or field. /// The created public static MemberExpression MakeMemberAccess(Expression expression, MemberInfo member) { ContractUtils.RequiresNotNull(member, "member"); FieldInfo fi = member as FieldInfo; if (fi != null) { return Expression.Field(expression, fi); } PropertyInfo pi = member as PropertyInfo; if (pi != null) { return Expression.Property(expression, pi); } throw Error.MemberNotFieldOrProperty(member); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. /* **************************************************************************** * * Copyright (c) Microsoft Corporation. * * This source code is subject to terms and conditions of the Microsoft Public License. A * copy of the license can be found in the License.html file at the root of this distribution. If * you cannot locate the Microsoft Public License, please send an email to * dlr@microsoft.com. By using this source code in any fashion, you are agreeing to be bound * by the terms of the Microsoft Public License. * * You must not remove this notice, or any other, from this software. * * * ***************************************************************************/ using System.Diagnostics; using System.Dynamic.Utils; using System.Reflection; #if SILVERLIGHT using System.Core; #endif namespace System.Linq.Expressions { ///. /// Represents accessing a field or property. /// #if !SILVERLIGHT [DebuggerTypeProxy(typeof(Expression.MemberExpressionProxy))] #endif public class MemberExpression : Expression { private readonly Expression _expression; ////// Gets the field or property to be accessed. /// public MemberInfo Member { get { return GetMember(); } } ////// Gets the containing object of the field or property. /// public Expression Expression { get { return _expression; } } // param order: factories args in order, then other args internal MemberExpression(Expression expression) { _expression = expression; } internal static MemberExpression Make(Expression expression, MemberInfo member) { if (member.MemberType == MemberTypes.Field) { FieldInfo fi = (FieldInfo)member; return new FieldExpression(expression, fi); } else { PropertyInfo pi = (PropertyInfo)member; return new PropertyExpression(expression, pi); } } ////// Returns the node type of this ///. (Inherited from .) /// The public sealed override ExpressionType NodeType { get { return ExpressionType.MemberAccess; } } internal virtual MemberInfo GetMember() { throw ContractUtils.Unreachable; } ///that represents this expression. /// Dispatches to the specific visit method for this node type. /// protected internal override Expression Accept(ExpressionVisitor visitor) { return visitor.VisitMember(this); } ////// Creates a new expression that is like this one, but using the /// supplied children. If all of the children are the same, it will /// return this expression. /// /// Theproperty of the result. /// This expression if no children changed, or an expression with the updated children. public MemberExpression Update(Expression expression) { if (expression == Expression) { return this; } return Expression.MakeMemberAccess(expression, Member); } } internal class FieldExpression : MemberExpression { private readonly FieldInfo _field; public FieldExpression(Expression expression, FieldInfo member) : base(expression) { _field = member; } internal override MemberInfo GetMember() { return _field; } public sealed override Type Type { get { return _field.FieldType; } } } internal class PropertyExpression : MemberExpression { private readonly PropertyInfo _property; public PropertyExpression(Expression expression, PropertyInfo member) : base(expression) { _property = member; } internal override MemberInfo GetMember() { return _property; } public sealed override Type Type { get { return _property.PropertyType; } } } public partial class Expression { #region Field ////// Creates a /// The containing object of the field. This can be null for static fields. /// The field to be accessed. ///accessing a field. /// The created [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1719:ParameterNamesShouldNotMatchMemberNames")] public static MemberExpression Field(Expression expression, FieldInfo field) { ContractUtils.RequiresNotNull(field, "field"); if (field.IsStatic) { if (expression != null) throw new ArgumentException(Strings.OnlyStaticFieldsHaveNullInstance, "expression"); } else { if (expression == null) throw new ArgumentException(Strings.OnlyStaticFieldsHaveNullInstance, "field"); RequiresCanRead(expression, "expression"); if (!TypeUtils.AreReferenceAssignable(field.DeclaringType, expression.Type)) { throw Error.FieldInfoNotDefinedForType(field.DeclaringType, field.Name, expression.Type); } } return MemberExpression.Make(expression, field); } ///. /// Creates a /// The containing object of the field. This can be null for static fields. /// The field to be accessed. ///accessing a field. /// The created public static MemberExpression Field(Expression expression, string fieldName) { RequiresCanRead(expression, "expression"); // bind to public names first FieldInfo fi = expression.Type.GetField(fieldName, BindingFlags.Instance | BindingFlags.Public | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); if (fi == null) { fi = expression.Type.GetField(fieldName, BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); } if (fi == null) { throw Error.InstanceFieldNotDefinedForType(fieldName, expression.Type); } return Expression.Field(expression, fi); } ///. /// Creates a /// The containing object of the field. This can be null for static fields. /// Theaccessing a field. /// containing the field. /// The field to be accessed. /// The created [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1719:ParameterNamesShouldNotMatchMemberNames")] public static MemberExpression Field(Expression expression, Type type, string fieldName) { ContractUtils.RequiresNotNull(type, "type"); // bind to public names first FieldInfo fi = type.GetField(fieldName, BindingFlags.Static | BindingFlags.Instance | BindingFlags.Public | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); if (fi == null) { fi = type.GetField(fieldName, BindingFlags.Static | BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); } if (fi == null) { throw Error.FieldNotDefinedForType(fieldName, type); } return Expression.Field(expression, fi); } #endregion #region Property ///. /// Creates a /// The containing object of the property. This can be null for static properties. /// The property to be accessed. ///accessing a property. /// The created public static MemberExpression Property(Expression expression, string propertyName) { RequiresCanRead(expression, "expression"); ContractUtils.RequiresNotNull(propertyName, "propertyName"); // bind to public names first PropertyInfo pi = expression.Type.GetProperty(propertyName, BindingFlags.Instance | BindingFlags.Public | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); if (pi == null) { pi = expression.Type.GetProperty(propertyName, BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); } if (pi == null) { throw Error.InstancePropertyNotDefinedForType(propertyName, expression.Type); } return Property(expression, pi); } ///. /// Creates a /// The containing object of the property. This can be null for static properties. /// Theaccessing a property. /// containing the property. /// The property to be accessed. /// The created public static MemberExpression Property(Expression expression, Type type, string propertyName) { ContractUtils.RequiresNotNull(type, "type"); ContractUtils.RequiresNotNull(propertyName, "propertyName"); // bind to public names first PropertyInfo pi = type.GetProperty(propertyName, BindingFlags.Instance | BindingFlags.Static | BindingFlags.Public | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); if (pi == null) { pi = type.GetProperty(propertyName, BindingFlags.Static | BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); } if (pi == null) { throw Error.PropertyNotDefinedForType(propertyName, type); } return Property(expression, pi); } ///. /// Creates a /// The containing object of the property. This can be null for static properties. /// The property to be accessed. ///accessing a property. /// The created [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1719:ParameterNamesShouldNotMatchMemberNames")] public static MemberExpression Property(Expression expression, PropertyInfo property) { ContractUtils.RequiresNotNull(property, "property"); MethodInfo mi = property.GetGetMethod(true) ?? property.GetSetMethod(true); if (mi == null) { throw Error.PropertyDoesNotHaveAccessor(property); } if (mi.IsStatic) { if (expression != null) throw new ArgumentException(Strings.OnlyStaticPropertiesHaveNullInstance, "expression"); } else { if (expression == null) throw new ArgumentException(Strings.OnlyStaticPropertiesHaveNullInstance, "property"); RequiresCanRead(expression, "expression"); if (!TypeUtils.IsValidInstanceType(property, expression.Type)) { throw Error.PropertyNotDefinedForType(property, expression.Type); } } return MemberExpression.Make(expression, property); } ///. /// Creates a /// The containing object of the property. This can be null for static properties. /// An accessor method of the property to be accessed. ///accessing a property. /// The created public static MemberExpression Property(Expression expression, MethodInfo propertyAccessor) { ContractUtils.RequiresNotNull(propertyAccessor, "propertyAccessor"); ValidateMethodInfo(propertyAccessor); return Property(expression, GetProperty(propertyAccessor)); } private static PropertyInfo GetProperty(MethodInfo mi) { Type type = mi.DeclaringType; BindingFlags flags = BindingFlags.Public | BindingFlags.NonPublic; flags |= (mi.IsStatic) ? BindingFlags.Static : BindingFlags.Instance; PropertyInfo[] props = type.GetProperties(flags); foreach (PropertyInfo pi in props) { if (pi.CanRead && CheckMethod(mi, pi.GetGetMethod(true))) { return pi; } if (pi.CanWrite && CheckMethod(mi, pi.GetSetMethod(true))) { return pi; } } throw Error.MethodNotPropertyAccessor(mi.DeclaringType, mi.Name); } private static bool CheckMethod(MethodInfo method, MethodInfo propertyMethod) { if (method == propertyMethod) { return true; } // If the type is an interface then the handle for the method got by the compiler will not be the // same as that returned by reflection. // Check for this condition and try and get the method from reflection. Type type = method.DeclaringType; if (type.IsInterface && method.Name == propertyMethod.Name && type.GetMethod(method.Name) == propertyMethod) { return true; } return false; } #endregion ///. /// Creates a /// The containing object of the member. This can be null for static members. /// The member to be accessed. ///accessing a property or field. /// The created public static MemberExpression PropertyOrField(Expression expression, string propertyOrFieldName) { RequiresCanRead(expression, "expression"); // bind to public names first PropertyInfo pi = expression.Type.GetProperty(propertyOrFieldName, BindingFlags.Instance | BindingFlags.Public | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); if (pi != null) return Property(expression, pi); FieldInfo fi = expression.Type.GetField(propertyOrFieldName, BindingFlags.Instance | BindingFlags.Public | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); if (fi != null) return Field(expression, fi); pi = expression.Type.GetProperty(propertyOrFieldName, BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); if (pi != null) return Property(expression, pi); fi = expression.Type.GetField(propertyOrFieldName, BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.IgnoreCase | BindingFlags.FlattenHierarchy); if (fi != null) return Field(expression, fi); throw Error.NotAMemberOfType(propertyOrFieldName, expression.Type); } ///. /// Creates a /// The containing object of the member. This can be null for static members. /// The member to be accessed. ///accessing a property or field. /// The created public static MemberExpression MakeMemberAccess(Expression expression, MemberInfo member) { ContractUtils.RequiresNotNull(member, "member"); FieldInfo fi = member as FieldInfo; if (fi != null) { return Expression.Field(expression, fi); } PropertyInfo pi = member as PropertyInfo; if (pi != null) { return Expression.Property(expression, pi); } throw Error.MemberNotFieldOrProperty(member); } } } // 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
- HttpCookiesSection.cs
- StructuredTypeEmitter.cs
- XpsS0ValidatingLoader.cs
- RuntimeHelpers.cs
- HttpListenerElement.cs
- MembershipSection.cs
- _FtpDataStream.cs
- LassoHelper.cs
- MDIControlStrip.cs
- DecimalAnimation.cs
- Int64KeyFrameCollection.cs
- SwitchDesigner.xaml.cs
- BamlRecordHelper.cs
- CapabilitiesAssignment.cs
- Thread.cs
- HttpListenerRequest.cs
- FixedSOMLineCollection.cs
- CRYPTPROTECT_PROMPTSTRUCT.cs
- IdentityReference.cs
- ToolStripLocationCancelEventArgs.cs
- PtsHost.cs
- PermissionRequestEvidence.cs
- XmlUtil.cs
- HostExecutionContextManager.cs
- FacetEnabledSchemaElement.cs
- TextEditorCharacters.cs
- SqlComparer.cs
- Repeater.cs
- objectresult_tresulttype.cs
- WebControl.cs
- DelayedRegex.cs
- Command.cs
- SoapTypeAttribute.cs
- ObjectPersistData.cs
- ScriptMethodAttribute.cs
- BorderGapMaskConverter.cs
- NotCondition.cs
- FixedSOMGroup.cs
- TabPageDesigner.cs
- Columns.cs
- CqlParserHelpers.cs
- InvalidCardException.cs
- ConfigurationErrorsException.cs
- ConnectionPoolManager.cs
- IIS7WorkerRequest.cs
- ObjectItemCollectionAssemblyCacheEntry.cs
- XmlTextReader.cs
- Atom10FormatterFactory.cs
- HtmlInputPassword.cs
- HostedImpersonationContext.cs
- BitmapPalette.cs
- SqlTriggerContext.cs
- Misc.cs
- SplitterDesigner.cs
- DataSourceProvider.cs
- ToolStripProgressBar.cs
- PageWrapper.cs
- XmlTextReaderImplHelpers.cs
- XslException.cs
- PropertyMappingExceptionEventArgs.cs
- EventListenerClientSide.cs
- AspProxy.cs
- SchemaSetCompiler.cs
- JulianCalendar.cs
- LineGeometry.cs
- CngKeyBlobFormat.cs
- ComponentCommands.cs
- QilParameter.cs
- XmlNamespaceDeclarationsAttribute.cs
- CorruptingExceptionCommon.cs
- X509ThumbprintKeyIdentifierClause.cs
- HttpPostProtocolImporter.cs
- InvariantComparer.cs
- ReflectionHelper.cs
- ProjectionAnalyzer.cs
- VideoDrawing.cs
- TableParagraph.cs
- EndpointDesigner.cs
- KeyNotFoundException.cs
- RadioButton.cs
- ParamArrayAttribute.cs
- SqlDataSourceDesigner.cs
- WSFederationHttpSecurityElement.cs
- AudioFormatConverter.cs
- RegistryPermission.cs
- SignalGate.cs
- WriteLineDesigner.xaml.cs
- IndicFontClient.cs
- StylusPointProperties.cs
- PackageFilter.cs
- ListItemParagraph.cs
- ReflectionPermission.cs
- XhtmlTextWriter.cs
- ActivityExecutorDelegateInfo.cs
- WindowsGrip.cs
- RadioButtonRenderer.cs
- ControlPropertyNameConverter.cs
- TypeLibraryHelper.cs
- ServiceOperationParameter.cs
- XmlSerializationGeneratedCode.cs