Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- StateDesigner.TransitionInfo.cs
- SecurityContext.cs
- ObjectSpanRewriter.cs
- ContentElement.cs
- MulticastNotSupportedException.cs
- HtmlInputFile.cs
- QilLiteral.cs
- UserPersonalizationStateInfo.cs
- StateMachineAction.cs
- ParseNumbers.cs
- Mappings.cs
- WebPartEditorOkVerb.cs
- InternalMappingException.cs
- InvalidAsynchronousStateException.cs
- DbTransaction.cs
- SQLInt16.cs
- WebMessageEncodingBindingElement.cs
- RectAnimation.cs
- Enlistment.cs
- COM2PropertyPageUITypeConverter.cs
- MemberBinding.cs
- SqlErrorCollection.cs
- MailAddressParser.cs
- CategoryAttribute.cs
- SizeFConverter.cs
- PrefixQName.cs
- DesignBindingConverter.cs
- ConfigurationElementProperty.cs
- ParentQuery.cs
- Stackframe.cs
- SoapSchemaMember.cs
- ResetableIterator.cs
- XmlTypeAttribute.cs
- TabControlToolboxItem.cs
- CompiledQueryCacheKey.cs
- InputLanguageSource.cs
- BulletedList.cs
- WsatExtendedInformation.cs
- IISMapPath.cs
- TransactionFlowBindingElementImporter.cs
- ObfuscationAttribute.cs
- NullReferenceException.cs
- externdll.cs
- NumericExpr.cs
- ExpressionBindingCollection.cs
- DomNameTable.cs
- XmlSchemaComplexContentExtension.cs
- CompoundFileStorageReference.cs
- ToolStripProgressBar.cs
- ToolStripSystemRenderer.cs
- CancelRequestedQuery.cs
- RawStylusInputReport.cs
- NamedElement.cs
- ClientTargetSection.cs
- TabRenderer.cs
- WCFBuildProvider.cs
- TreeView.cs
- DisposableCollectionWrapper.cs
- Queue.cs
- WebEventCodes.cs
- TransactionCache.cs
- WindowsClientCredential.cs
- PartManifestEntry.cs
- LogicalChannel.cs
- ProfileProvider.cs
- WebPart.cs
- VSWCFServiceContractGenerator.cs
- SelectorAutomationPeer.cs
- Pair.cs
- CompiledIdentityConstraint.cs
- EventLog.cs
- DataGridViewTopLeftHeaderCell.cs
- HttpAsyncResult.cs
- SqlOuterApplyReducer.cs
- RuntimeTrackingProfile.cs
- SqlNode.cs
- Label.cs
- ParentUndoUnit.cs
- SID.cs
- SiteMapNodeItem.cs
- Parsers.cs
- StringValidator.cs
- NonVisualControlAttribute.cs
- GetImportFileNameRequest.cs
- RowType.cs
- ConfigXmlText.cs
- Bits.cs
- SerializationStore.cs
- ReflectionPermission.cs
- CollectionViewProxy.cs
- Expression.cs
- RelationshipManager.cs
- WebBaseEventKeyComparer.cs
- CredentialCache.cs
- ClientRuntimeConfig.cs
- validationstate.cs
- CalculatedColumn.cs
- ToolStripPanelRow.cs
- AxisAngleRotation3D.cs
- HierarchicalDataBoundControlAdapter.cs