Mercurial > pub > bltoolkit
view Source/Reflection/Extension/AttributeExtension.cs @ 5:f7d63a092920
Исправлено условие Where в тех случаях, когда репозитарий не является генериком
author | cin |
---|---|
date | Tue, 10 Mar 2015 16:02:11 +0300 |
parents | f990fcb411a9 |
children |
line wrap: on
line source
using System; namespace BLToolkit.Reflection.Extension { public class AttributeExtension { public AttributeExtension() { Values = new ValueCollection(); } private AttributeExtension(ValueCollection values) { Values = values; } public string Name { get; set; } public ValueCollection Values { get; private set; } public object Value { get { return this == _null? null: Values.Value; } } public object this[string valueName] { get { return this == _null? null: Values[valueName]; } } public object this[string valueName, object defaultValue] { get { return this[valueName] ?? defaultValue; } } private AttributeNameCollection _attributes; public AttributeNameCollection Attributes { get { return _attributes ?? (_attributes = new AttributeNameCollection()); } } private static readonly AttributeExtension _null = new AttributeExtension(ValueCollection.Null); public static AttributeExtension Null { get { return _null; } } } }