Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / ndp / fx / src / DataWeb / Server / System / Data / Services / Providers / ResourceProperty.cs / 1 / ResourceProperty.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // //// Provides a type to describe properties on resources. // // // @owner [....] //--------------------------------------------------------------------- namespace System.Data.Services.Providers { using System; using System.Diagnostics; using System.Reflection; ///Use this class to describe a property on a resource. [DebuggerDisplay("{kind}: {name}")] internal class ResourceProperty { #region Private fields. ///A MethodInfo representing the get accessor for this property. private readonly MethodInfo getMethod; ///Returns a PropertyInfo representing this property. private readonly PropertyInfo propertyInfo; ///Returns a MethodInfo representing the set accessor for this property. private readonly MethodInfo setMethod; ///MIME type for the property, if it's a primitive value. private readonly string mimeType; ///The name of this property. private readonly string name; ///The resource container a resource property refers to, if applicable. private readonly ResourceContainer resourceContainer; ///The kind of resource Type that this property refers to. /// For e.g. for collection properties, this would return the resource type, /// and not the collection type that this property refers to. private readonly ResourceType resourcePropertyType; #if ASTORIA_CONTAINMENT ///Property names of mapped keys in child (target) container. private string[] containmentChildKeys; ///Property names of mapped keys in parent container. private string[] containmentParentKeys; ///Container of target (child) entities. private ResourceContainer containmentTarget; #endif ///The kind of property this is in relation to the resource. private ResourcePropertyKind kind; #endregion Private fields. #if ASTORIA_OPEN_OBJECT ////// Initializes a new ResourceProperty instance for an open property. /// /// Property name for the property. /// Property kind. /// The type of the resource that this property refers to internal ResourceProperty(string name, ResourcePropertyKind kind, ResourceType propertyResourceType) { DebugIsValidPropertyKind(kind); Debug.Assert(name != null, "name cannot be null"); Debug.Assert(propertyResourceType != null, "propertyResourceType != null"); this.kind = kind; this.name = name; this.resourcePropertyType = propertyResourceType; } #endif ////// Initializes a new ResourceProperty instance based on the specified parameters. /// /// Property info for the property. /// Property kind. /// MIME type for the property, if it's a primitive value; null if none specified. /// The type of the resource that this property refers to /// The resource container a resource property refers to, if applicable. internal ResourceProperty(PropertyInfo propertyInfo, ResourcePropertyKind kind, string mimeType, ResourceType propertyResourceType, ResourceContainer resourceContainer) { DebugIsValidPropertyKind(kind); Debug.Assert(propertyInfo != null, "propertyInfo cannot be null"); Debug.Assert(propertyResourceType != null, "propertyResourceType != null"); Debug.Assert( kind == ResourcePropertyKind.ResourceSetReference || Nullable.GetUnderlyingType(propertyInfo.PropertyType) != null || propertyInfo.PropertyType == propertyResourceType.Type, "Except reference and collection properties, the property type and resource property type must be identical"); Debug.Assert( resourceContainer == null || kind == ResourcePropertyKind.ResourceReference || kind == ResourcePropertyKind.ResourceSetReference, "Only references can include a resource container."); Debug.Assert( resourceContainer != null || (kind != ResourcePropertyKind.ResourceReference && kind != ResourcePropertyKind.ResourceSetReference), "References must include their target resource container."); if (mimeType != null && !WebUtil.IsValidMimeType(mimeType)) { // 500 - Internal Server Error string message = Strings.ResourceProperty_MimeTypeNotValid( mimeType, propertyInfo.Name, propertyInfo.DeclaringType); throw new InvalidOperationException(message); } this.kind = kind; this.getMethod = propertyInfo.GetGetMethod(); this.name = propertyInfo.Name; this.mimeType = mimeType; this.resourcePropertyType = propertyResourceType; this.setMethod = propertyInfo.GetSetMethod(); this.propertyInfo = propertyInfo; this.resourceContainer = resourceContainer; } #if ASTORIA_CONTAINMENT ///Property names of mapped keys in child (target) container. internal string[] ContainmentChildKeys { [DebuggerStepThrough] get { return this.containmentChildKeys; } } ///Property names of mapped keys in parent container. internal string[] ContainmentParentKeys { [DebuggerStepThrough] get { return this.containmentParentKeys; } } ///Container of target (child) entities. internal ResourceContainer ContainmentTarget { [DebuggerStepThrough] get { return this.containmentTarget; } } ///Whether this property is the canonical containment path for its target container. ////// This property is only meaningful in the context of reflection services, as containment is defined /// on a per-set basis and properties are defined on a per-type basis. /// internal bool ContainmentTargetCanonical { get { return this.containmentTarget != null && this.containmentTarget.ContainmentCanonicalProperty == this; } } #endif ///Gets a MethodInfo representing the get accessor for this property. internal MethodInfo GetMethod { get { return this.getMethod; } } ///The kind of property this is in relation to the resource. internal ResourcePropertyKind Kind { [DebuggerStepThrough] get { return this.kind; } [DebuggerStepThrough] set { this.kind = value; } } ///Returns a PropertyInfo representing this property. internal PropertyInfo PropertyInfo { [DebuggerStepThrough] get { return this.propertyInfo; } } ///Returns the ///this property refers to, if applicable. /// In MEST (multiple entity sets per type) scenarios, the specific /// resource container may vary depending on the container (entity set) /// of type that has holds this property. /// /// In this case, the value of this property will be a representative /// container for security purposes, meaning that all associated /// containers will have identical rights. /// internal ResourceContainer ResourceContainer { [DebuggerStepThrough] get { return this.resourceContainer; } } ///The kind of type this property has in relation to the data service. internal ResourceTypeKind TypeKind { get { if (this.IsOfKind(ResourcePropertyKind.Primitive)) { return ResourceTypeKind.Primitive; } else if (this.kind == ResourcePropertyKind.ResourceReference || this.kind == ResourcePropertyKind.ResourceSetReference) { return ResourceTypeKind.EntityType; } else { Debug.Assert(this.kind == ResourcePropertyKind.ComplexType, "this.kind == ResourcePropertyKind.ComplexType"); return ResourceTypeKind.ComplexType; } } } ///MIME type for the property, if it's a primitive value; null if none specified. internal string MimeType { [DebuggerStepThrough] get { return this.mimeType; } } ///The property name. internal string Name { [DebuggerStepThrough] get { return this.name; } } ///The type of the property. internal Type Type { get { if (this.PropertyInfo != null) { return this.PropertyInfo.PropertyType; } else { if (this.Kind == ResourcePropertyKind.ResourceSetReference) { return typeof(System.Collections.Generic.IEnumerable<>).MakeGenericType(this.resourcePropertyType.Type); } else { return this.resourcePropertyType.Type; } } } } ////// The clr type that is property refers to [For collection, /// this will return the element of the collection, and not the /// collection]. /// internal Type ResourceClrType { [DebuggerStepThrough] get { return this.resourcePropertyType.Type; } } ////// The resource type that is property refers to [For collection, /// this will return the element of the collection, and not the /// collection]. /// internal ResourceType ResourceType { [DebuggerStepThrough] get { return this.resourcePropertyType; } } ///Returns the value of the property. /// The object whose property value will be returned. ///The property value for the internal object GetValue(object instance) { Debug.Assert(instance != null, "instance != null"); try { return this.getMethod.Invoke(instance, null); } catch (TargetInvocationException exception) { ErrorHandler.HandleTargetInvocationException(exception); throw; } } ///parameter. Sets the value of the property. /// The object whose property needs to be set. /// new value for the property. internal void SetValue(object instance, object propertyValue) { Debug.Assert(instance != null, "instance != null"); try { if (this.setMethod == null) { throw DataServiceException.CreateBadRequestError(Strings.BadRequest_PropertyValueCannotBeSet(this.Name)); } this.setMethod.Invoke(instance, new object[] { propertyValue }); } catch (TargetInvocationException exception) { ErrorHandler.HandleTargetInvocationException(exception); throw; } catch (ArgumentException exception) { throw DataServiceException.CreateBadRequestError(Strings.BadRequest_ErrorInSettingPropertyValue(this.Name), exception); } } ////// return true if this property is of the given kind /// /// flag which needs to be checked on the current property kind ///true if the current property is of the given kind internal bool IsOfKind(ResourcePropertyKind checkKind) { return ResourceProperty.IsOfKind(this.kind, checkKind); } #if ASTORIA_CONTAINMENT ////// Sets all properties for the target in a containment relationship. /// /// Property names of mapped keys in child (target) container. /// Property names of mapped keys in parent container. /// Container of target (child) entities. [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Maintainability", "CA1500:VariableNamesShouldNotMatchFieldNames", MessageId = "containmentChildKeys", Justification = "1:1 mapping")] [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Maintainability", "CA1500:VariableNamesShouldNotMatchFieldNames", MessageId = "containmentParentKeys", Justification = "1:1 mapping")] [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Maintainability", "CA1500:VariableNamesShouldNotMatchFieldNames", MessageId = "containmentTarget", Justification = "1:1 mapping")] internal void SetupContainmentTarget( string[] containmentChildKeys, string[] containmentParentKeys, ResourceContainer containmentTarget) { Debug.Assert(containmentChildKeys != null, "containmentChildKeys != null"); Debug.Assert(containmentParentKeys != null, "containmentParentKeys != null"); Debug.Assert(containmentTarget != null, "containmentTarget != null"); Debug.Assert( this.containmentChildKeys == null, "this.containmentChildKeys == null -- otherwise the navigation property has more than one target"); Debug.Assert( this.IsOfKind(ResourcePropertyKind.ResourceSetReference), "this.IsOfKind(ResourcePropertyKind.ResourceSetReference) -- otherwise this cannot be a containment source."); this.containmentChildKeys = containmentChildKeys; this.containmentParentKeys = containmentParentKeys; this.containmentTarget = containmentTarget; } #endif ////// return true if the given property kind is of the given kind /// /// kind of the property /// flag which needs to be checked on property kind ///true if the kind flag is set on the given property kind private static bool IsOfKind(ResourcePropertyKind propertyKind, ResourcePropertyKind kind) { return ((propertyKind & kind) == kind); } ////// Validates that the given property kind is valid /// /// property kind is valid [Conditional("DEBUG")] private static void DebugIsValidPropertyKind(ResourcePropertyKind propertyKind) { if (ResourceProperty.IsOfKind(propertyKind, ResourcePropertyKind.ResourceReference)) { Debug.Assert( propertyKind == ResourcePropertyKind.ResourceReference || propertyKind == (ResourcePropertyKind.ResourceReference | ResourcePropertyKind.OpenProperty), "reference property can't have any flags set"); } else if (ResourceProperty.IsOfKind(propertyKind, ResourcePropertyKind.ResourceSetReference)) { Debug.Assert( propertyKind == ResourcePropertyKind.ResourceSetReference || propertyKind == (ResourcePropertyKind.ResourceSetReference | ResourcePropertyKind.OpenProperty), "setreference property can't have any flags set"); } else if (ResourceProperty.IsOfKind(propertyKind, ResourcePropertyKind.ComplexType)) { Debug.Assert(propertyKind == ResourcePropertyKind.ComplexType, "complex property can't have any flags set"); } else { Debug.Assert(ResourceProperty.IsOfKind(propertyKind, ResourcePropertyKind.Primitive), "property must be primitive"); Debug.Assert(propertyKind != ResourcePropertyKind.Key, "property can't be alone set to key"); ResourcePropertyKind all = ResourcePropertyKind.ComplexType | ResourcePropertyKind.Key | ResourcePropertyKind.Primitive | ResourcePropertyKind.ResourceReference | ResourcePropertyKind.ResourceSetReference | ResourcePropertyKind.OpenProperty; Debug.Assert((propertyKind | all) == all, "no higher bits must be set on the propertyKind"); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // //// Provides a type to describe properties on resources. // // // @owner [....] //--------------------------------------------------------------------- namespace System.Data.Services.Providers { using System; using System.Diagnostics; using System.Reflection; ///Use this class to describe a property on a resource. [DebuggerDisplay("{kind}: {name}")] internal class ResourceProperty { #region Private fields. ///A MethodInfo representing the get accessor for this property. private readonly MethodInfo getMethod; ///Returns a PropertyInfo representing this property. private readonly PropertyInfo propertyInfo; ///Returns a MethodInfo representing the set accessor for this property. private readonly MethodInfo setMethod; ///MIME type for the property, if it's a primitive value. private readonly string mimeType; ///The name of this property. private readonly string name; ///The resource container a resource property refers to, if applicable. private readonly ResourceContainer resourceContainer; ///The kind of resource Type that this property refers to. /// For e.g. for collection properties, this would return the resource type, /// and not the collection type that this property refers to. private readonly ResourceType resourcePropertyType; #if ASTORIA_CONTAINMENT ///Property names of mapped keys in child (target) container. private string[] containmentChildKeys; ///Property names of mapped keys in parent container. private string[] containmentParentKeys; ///Container of target (child) entities. private ResourceContainer containmentTarget; #endif ///The kind of property this is in relation to the resource. private ResourcePropertyKind kind; #endregion Private fields. #if ASTORIA_OPEN_OBJECT ////// Initializes a new ResourceProperty instance for an open property. /// /// Property name for the property. /// Property kind. /// The type of the resource that this property refers to internal ResourceProperty(string name, ResourcePropertyKind kind, ResourceType propertyResourceType) { DebugIsValidPropertyKind(kind); Debug.Assert(name != null, "name cannot be null"); Debug.Assert(propertyResourceType != null, "propertyResourceType != null"); this.kind = kind; this.name = name; this.resourcePropertyType = propertyResourceType; } #endif ////// Initializes a new ResourceProperty instance based on the specified parameters. /// /// Property info for the property. /// Property kind. /// MIME type for the property, if it's a primitive value; null if none specified. /// The type of the resource that this property refers to /// The resource container a resource property refers to, if applicable. internal ResourceProperty(PropertyInfo propertyInfo, ResourcePropertyKind kind, string mimeType, ResourceType propertyResourceType, ResourceContainer resourceContainer) { DebugIsValidPropertyKind(kind); Debug.Assert(propertyInfo != null, "propertyInfo cannot be null"); Debug.Assert(propertyResourceType != null, "propertyResourceType != null"); Debug.Assert( kind == ResourcePropertyKind.ResourceSetReference || Nullable.GetUnderlyingType(propertyInfo.PropertyType) != null || propertyInfo.PropertyType == propertyResourceType.Type, "Except reference and collection properties, the property type and resource property type must be identical"); Debug.Assert( resourceContainer == null || kind == ResourcePropertyKind.ResourceReference || kind == ResourcePropertyKind.ResourceSetReference, "Only references can include a resource container."); Debug.Assert( resourceContainer != null || (kind != ResourcePropertyKind.ResourceReference && kind != ResourcePropertyKind.ResourceSetReference), "References must include their target resource container."); if (mimeType != null && !WebUtil.IsValidMimeType(mimeType)) { // 500 - Internal Server Error string message = Strings.ResourceProperty_MimeTypeNotValid( mimeType, propertyInfo.Name, propertyInfo.DeclaringType); throw new InvalidOperationException(message); } this.kind = kind; this.getMethod = propertyInfo.GetGetMethod(); this.name = propertyInfo.Name; this.mimeType = mimeType; this.resourcePropertyType = propertyResourceType; this.setMethod = propertyInfo.GetSetMethod(); this.propertyInfo = propertyInfo; this.resourceContainer = resourceContainer; } #if ASTORIA_CONTAINMENT ///Property names of mapped keys in child (target) container. internal string[] ContainmentChildKeys { [DebuggerStepThrough] get { return this.containmentChildKeys; } } ///Property names of mapped keys in parent container. internal string[] ContainmentParentKeys { [DebuggerStepThrough] get { return this.containmentParentKeys; } } ///Container of target (child) entities. internal ResourceContainer ContainmentTarget { [DebuggerStepThrough] get { return this.containmentTarget; } } ///Whether this property is the canonical containment path for its target container. ////// This property is only meaningful in the context of reflection services, as containment is defined /// on a per-set basis and properties are defined on a per-type basis. /// internal bool ContainmentTargetCanonical { get { return this.containmentTarget != null && this.containmentTarget.ContainmentCanonicalProperty == this; } } #endif ///Gets a MethodInfo representing the get accessor for this property. internal MethodInfo GetMethod { get { return this.getMethod; } } ///The kind of property this is in relation to the resource. internal ResourcePropertyKind Kind { [DebuggerStepThrough] get { return this.kind; } [DebuggerStepThrough] set { this.kind = value; } } ///Returns a PropertyInfo representing this property. internal PropertyInfo PropertyInfo { [DebuggerStepThrough] get { return this.propertyInfo; } } ///Returns the ///this property refers to, if applicable. /// In MEST (multiple entity sets per type) scenarios, the specific /// resource container may vary depending on the container (entity set) /// of type that has holds this property. /// /// In this case, the value of this property will be a representative /// container for security purposes, meaning that all associated /// containers will have identical rights. /// internal ResourceContainer ResourceContainer { [DebuggerStepThrough] get { return this.resourceContainer; } } ///The kind of type this property has in relation to the data service. internal ResourceTypeKind TypeKind { get { if (this.IsOfKind(ResourcePropertyKind.Primitive)) { return ResourceTypeKind.Primitive; } else if (this.kind == ResourcePropertyKind.ResourceReference || this.kind == ResourcePropertyKind.ResourceSetReference) { return ResourceTypeKind.EntityType; } else { Debug.Assert(this.kind == ResourcePropertyKind.ComplexType, "this.kind == ResourcePropertyKind.ComplexType"); return ResourceTypeKind.ComplexType; } } } ///MIME type for the property, if it's a primitive value; null if none specified. internal string MimeType { [DebuggerStepThrough] get { return this.mimeType; } } ///The property name. internal string Name { [DebuggerStepThrough] get { return this.name; } } ///The type of the property. internal Type Type { get { if (this.PropertyInfo != null) { return this.PropertyInfo.PropertyType; } else { if (this.Kind == ResourcePropertyKind.ResourceSetReference) { return typeof(System.Collections.Generic.IEnumerable<>).MakeGenericType(this.resourcePropertyType.Type); } else { return this.resourcePropertyType.Type; } } } } ////// The clr type that is property refers to [For collection, /// this will return the element of the collection, and not the /// collection]. /// internal Type ResourceClrType { [DebuggerStepThrough] get { return this.resourcePropertyType.Type; } } ////// The resource type that is property refers to [For collection, /// this will return the element of the collection, and not the /// collection]. /// internal ResourceType ResourceType { [DebuggerStepThrough] get { return this.resourcePropertyType; } } ///Returns the value of the property. /// The object whose property value will be returned. ///The property value for the internal object GetValue(object instance) { Debug.Assert(instance != null, "instance != null"); try { return this.getMethod.Invoke(instance, null); } catch (TargetInvocationException exception) { ErrorHandler.HandleTargetInvocationException(exception); throw; } } ///parameter. Sets the value of the property. /// The object whose property needs to be set. /// new value for the property. internal void SetValue(object instance, object propertyValue) { Debug.Assert(instance != null, "instance != null"); try { if (this.setMethod == null) { throw DataServiceException.CreateBadRequestError(Strings.BadRequest_PropertyValueCannotBeSet(this.Name)); } this.setMethod.Invoke(instance, new object[] { propertyValue }); } catch (TargetInvocationException exception) { ErrorHandler.HandleTargetInvocationException(exception); throw; } catch (ArgumentException exception) { throw DataServiceException.CreateBadRequestError(Strings.BadRequest_ErrorInSettingPropertyValue(this.Name), exception); } } ////// return true if this property is of the given kind /// /// flag which needs to be checked on the current property kind ///true if the current property is of the given kind internal bool IsOfKind(ResourcePropertyKind checkKind) { return ResourceProperty.IsOfKind(this.kind, checkKind); } #if ASTORIA_CONTAINMENT ////// Sets all properties for the target in a containment relationship. /// /// Property names of mapped keys in child (target) container. /// Property names of mapped keys in parent container. /// Container of target (child) entities. [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Maintainability", "CA1500:VariableNamesShouldNotMatchFieldNames", MessageId = "containmentChildKeys", Justification = "1:1 mapping")] [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Maintainability", "CA1500:VariableNamesShouldNotMatchFieldNames", MessageId = "containmentParentKeys", Justification = "1:1 mapping")] [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Maintainability", "CA1500:VariableNamesShouldNotMatchFieldNames", MessageId = "containmentTarget", Justification = "1:1 mapping")] internal void SetupContainmentTarget( string[] containmentChildKeys, string[] containmentParentKeys, ResourceContainer containmentTarget) { Debug.Assert(containmentChildKeys != null, "containmentChildKeys != null"); Debug.Assert(containmentParentKeys != null, "containmentParentKeys != null"); Debug.Assert(containmentTarget != null, "containmentTarget != null"); Debug.Assert( this.containmentChildKeys == null, "this.containmentChildKeys == null -- otherwise the navigation property has more than one target"); Debug.Assert( this.IsOfKind(ResourcePropertyKind.ResourceSetReference), "this.IsOfKind(ResourcePropertyKind.ResourceSetReference) -- otherwise this cannot be a containment source."); this.containmentChildKeys = containmentChildKeys; this.containmentParentKeys = containmentParentKeys; this.containmentTarget = containmentTarget; } #endif ////// return true if the given property kind is of the given kind /// /// kind of the property /// flag which needs to be checked on property kind ///true if the kind flag is set on the given property kind private static bool IsOfKind(ResourcePropertyKind propertyKind, ResourcePropertyKind kind) { return ((propertyKind & kind) == kind); } ////// Validates that the given property kind is valid /// /// property kind is valid [Conditional("DEBUG")] private static void DebugIsValidPropertyKind(ResourcePropertyKind propertyKind) { if (ResourceProperty.IsOfKind(propertyKind, ResourcePropertyKind.ResourceReference)) { Debug.Assert( propertyKind == ResourcePropertyKind.ResourceReference || propertyKind == (ResourcePropertyKind.ResourceReference | ResourcePropertyKind.OpenProperty), "reference property can't have any flags set"); } else if (ResourceProperty.IsOfKind(propertyKind, ResourcePropertyKind.ResourceSetReference)) { Debug.Assert( propertyKind == ResourcePropertyKind.ResourceSetReference || propertyKind == (ResourcePropertyKind.ResourceSetReference | ResourcePropertyKind.OpenProperty), "setreference property can't have any flags set"); } else if (ResourceProperty.IsOfKind(propertyKind, ResourcePropertyKind.ComplexType)) { Debug.Assert(propertyKind == ResourcePropertyKind.ComplexType, "complex property can't have any flags set"); } else { Debug.Assert(ResourceProperty.IsOfKind(propertyKind, ResourcePropertyKind.Primitive), "property must be primitive"); Debug.Assert(propertyKind != ResourcePropertyKind.Key, "property can't be alone set to key"); ResourcePropertyKind all = ResourcePropertyKind.ComplexType | ResourcePropertyKind.Key | ResourcePropertyKind.Primitive | ResourcePropertyKind.ResourceReference | ResourcePropertyKind.ResourceSetReference | ResourcePropertyKind.OpenProperty; Debug.Assert((propertyKind | all) == all, "no higher bits must be set on the propertyKind"); } } } } // 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
- DataKeyArray.cs
- ScriptingRoleServiceSection.cs
- TemplateBindingExtension.cs
- unitconverter.cs
- DataGridViewComboBoxCell.cs
- DesignRelationCollection.cs
- ObjRef.cs
- CallbackValidator.cs
- OleDbStruct.cs
- SapiGrammar.cs
- assemblycache.cs
- EntityContainer.cs
- SemanticValue.cs
- _CookieModule.cs
- DisableDpiAwarenessAttribute.cs
- SkewTransform.cs
- HostingEnvironment.cs
- Parameter.cs
- NumericUpDownAccelerationCollection.cs
- AddDataControlFieldDialog.cs
- SQLByteStorage.cs
- NCryptNative.cs
- ConfigurationSettings.cs
- UIElementIsland.cs
- VirtualPathProvider.cs
- MessageEncoderFactory.cs
- CodeDomDesignerLoader.cs
- SemanticBasicElement.cs
- ThemeableAttribute.cs
- DataSet.cs
- PenLineJoinValidation.cs
- NamespaceDecl.cs
- ContentPosition.cs
- SocketException.cs
- FormViewAutoFormat.cs
- Sql8ExpressionRewriter.cs
- ClusterRegistryConfigurationProvider.cs
- MD5.cs
- RegexCapture.cs
- ConnectionManagementElementCollection.cs
- HandleExceptionArgs.cs
- CodeStatement.cs
- SafeHandles.cs
- HttpListenerContext.cs
- DiscoveryClientProtocol.cs
- PreservationFileWriter.cs
- OdbcDataAdapter.cs
- HttpRawResponse.cs
- EntityDataSourceStatementEditor.cs
- BaseServiceProvider.cs
- TableAdapterManagerNameHandler.cs
- CatalogZone.cs
- FileDialog.cs
- SoapFault.cs
- ReadOnlyCollection.cs
- DataGridCellsPanel.cs
- XmlUtf8RawTextWriter.cs
- NewArrayExpression.cs
- ImageKeyConverter.cs
- odbcmetadatacollectionnames.cs
- OpCellTreeNode.cs
- WebPartZoneCollection.cs
- Oci.cs
- ContextDataSource.cs
- ResourceDictionary.cs
- NavigationExpr.cs
- TreeViewImageIndexConverter.cs
- BulletedListEventArgs.cs
- GeometryConverter.cs
- TextEditorLists.cs
- ListViewDeletedEventArgs.cs
- DataGridViewRowPrePaintEventArgs.cs
- ReflectionUtil.cs
- DeferredElementTreeState.cs
- ParseElementCollection.cs
- RemotingConfigParser.cs
- SqlRecordBuffer.cs
- ProcessModule.cs
- ContextMenu.cs
- SamlAction.cs
- InsufficientExecutionStackException.cs
- AnnotationComponentChooser.cs
- Tuple.cs
- PeerName.cs
- ThreadStaticAttribute.cs
- Compiler.cs
- URLEditor.cs
- InputProviderSite.cs
- EventMappingSettingsCollection.cs
- StateDesigner.cs
- Thickness.cs
- SmiRecordBuffer.cs
- CodeEventReferenceExpression.cs
- ConnectionInterfaceCollection.cs
- UrlMapping.cs
- HandoffBehavior.cs
- BooleanFunctions.cs
- TypeEnumerableViewSchema.cs
- BrowserDefinition.cs
- SecurityVersion.cs