Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / DynamicData / DynamicData / Util / AttributeExtensions.cs / 1305376 / AttributeExtensions.cs
namespace System.Web.DynamicData.Util { using System; using System.Collections.Generic; using System.Linq; internal static class AttributeExtensions { ////// Gets the first attribute of a given time on the target AttributeCollection, or null. /// ///The attribute type /// The AttributeCollection object ///internal static TAttribute FirstOrDefault (this System.ComponentModel.AttributeCollection attributes) where TAttribute : Attribute { return attributes.OfType ().FirstOrDefault(); } internal static TResult GetAttributePropertyValue (this System.ComponentModel.AttributeCollection attributes, Func propertyGetter) where TResult : class where TAttribute : Attribute { return attributes.GetAttributePropertyValue(propertyGetter, null); } internal static TResult GetAttributePropertyValue (this System.ComponentModel.AttributeCollection attributes, Func propertyGetter, TResult defaultValue) where TAttribute : Attribute { var attribute = attributes.FirstOrDefault (); return attribute.GetPropertyValue (propertyGetter, defaultValue); } /// /// Gets the property for a given attribute reference or returns null if the reference is null. /// ///The attribute type ///The type of the attribute's property /// The attribute reference /// The function to evaluate on the attribute ///internal static TResult GetPropertyValue (this TAttribute attribute, Func propertyGetter) where TResult : class where TAttribute : Attribute { return attribute.GetPropertyValue(propertyGetter, null); } /// /// Gets the property for a given attribute reference or returns the default value if the reference is null. /// ///The attribute type ///The type of the attribute's property /// The attribute reference /// The function to evaluate on the attribute /// The default value to return if the attribute is null ///internal static TResult GetPropertyValue (this TAttribute attribute, Func propertyGetter, TResult defaultValue) where TAttribute : Attribute { if (attribute != null) { return propertyGetter(attribute); } else { return defaultValue; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. namespace System.Web.DynamicData.Util { using System; using System.Collections.Generic; using System.Linq; internal static class AttributeExtensions { /// /// Gets the first attribute of a given time on the target AttributeCollection, or null. /// ///The attribute type /// The AttributeCollection object ///internal static TAttribute FirstOrDefault (this System.ComponentModel.AttributeCollection attributes) where TAttribute : Attribute { return attributes.OfType ().FirstOrDefault(); } internal static TResult GetAttributePropertyValue (this System.ComponentModel.AttributeCollection attributes, Func propertyGetter) where TResult : class where TAttribute : Attribute { return attributes.GetAttributePropertyValue(propertyGetter, null); } internal static TResult GetAttributePropertyValue (this System.ComponentModel.AttributeCollection attributes, Func propertyGetter, TResult defaultValue) where TAttribute : Attribute { var attribute = attributes.FirstOrDefault (); return attribute.GetPropertyValue (propertyGetter, defaultValue); } /// /// Gets the property for a given attribute reference or returns null if the reference is null. /// ///The attribute type ///The type of the attribute's property /// The attribute reference /// The function to evaluate on the attribute ///internal static TResult GetPropertyValue (this TAttribute attribute, Func propertyGetter) where TResult : class where TAttribute : Attribute { return attribute.GetPropertyValue(propertyGetter, null); } /// /// Gets the property for a given attribute reference or returns the default value if the reference is null. /// ///The attribute type ///The type of the attribute's property /// The attribute reference /// The function to evaluate on the attribute /// The default value to return if the attribute is null ///internal static TResult GetPropertyValue (this TAttribute attribute, Func propertyGetter, TResult defaultValue) where TAttribute : Attribute { if (attribute != null) { return propertyGetter(attribute); } else { return defaultValue; } } } } // 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
- Constants.cs
- Bits.cs
- CodeDirectionExpression.cs
- DataComponentGenerator.cs
- ButtonChrome.cs
- DesignerTransactionCloseEvent.cs
- IntSecurity.cs
- ReferencedType.cs
- TreeView.cs
- DynamicPropertyReader.cs
- DependencyPropertyKey.cs
- SmiGettersStream.cs
- EventItfInfo.cs
- DataTemplate.cs
- XmlCharCheckingReader.cs
- DesignTimeResourceProviderFactoryAttribute.cs
- FontStretch.cs
- ContainsRowNumberChecker.cs
- XmlILConstructAnalyzer.cs
- SqlSelectStatement.cs
- AdPostCacheSubstitution.cs
- Int32CollectionConverter.cs
- MarginsConverter.cs
- HtmlShim.cs
- BamlWriter.cs
- IItemContainerGenerator.cs
- GetReadStreamResult.cs
- StylusEditingBehavior.cs
- Msmq4SubqueuePoisonHandler.cs
- CommandPlan.cs
- RuleSettings.cs
- LoadGrammarCompletedEventArgs.cs
- Grid.cs
- InsufficientMemoryException.cs
- StreamingContext.cs
- BrushMappingModeValidation.cs
- LineVisual.cs
- LogPolicy.cs
- HttpInputStream.cs
- StreamAsIStream.cs
- RuntimeUtils.cs
- WebRequestModuleElement.cs
- StorageMappingItemCollection.cs
- FixedPage.cs
- CryptoStream.cs
- OrderedEnumerableRowCollection.cs
- StrokeSerializer.cs
- RegionData.cs
- GenericEnumerator.cs
- GenericXmlSecurityToken.cs
- AssociationEndMember.cs
- DataSourceCacheDurationConverter.cs
- DrawingCollection.cs
- mda.cs
- IssuanceLicense.cs
- SrgsGrammarCompiler.cs
- NavigationPropertyEmitter.cs
- UIHelper.cs
- DockPanel.cs
- ZipFileInfoCollection.cs
- ButtonFieldBase.cs
- InstanceKeyCompleteException.cs
- PropertyDescriptorGridEntry.cs
- ThreadStaticAttribute.cs
- ByteFacetDescriptionElement.cs
- Rect.cs
- DocumentOrderQuery.cs
- TemplateBamlTreeBuilder.cs
- CodeEntryPointMethod.cs
- CustomAttribute.cs
- RegisteredHiddenField.cs
- LinkLabel.cs
- TransformPattern.cs
- FieldTemplateUserControl.cs
- XmlEncoding.cs
- SqlIdentifier.cs
- EncryptedType.cs
- SHA1Cng.cs
- TextTreeRootNode.cs
- SourceCollection.cs
- _NegoStream.cs
- PublisherIdentityPermission.cs
- PageThemeParser.cs
- ImmutablePropertyDescriptorGridEntry.cs
- SecurityUtils.cs
- DynamicRenderer.cs
- EntityConnection.cs
- Attributes.cs
- Helper.cs
- ComplexLine.cs
- MenuAutomationPeer.cs
- DetailsViewDeleteEventArgs.cs
- TemplateBindingExtension.cs
- HtmlEncodedRawTextWriter.cs
- EndpointAddress.cs
- IQueryable.cs
- NameValuePermission.cs
- EventLogPropertySelector.cs
- AdapterDictionary.cs
- ServiceHttpHandlerFactory.cs