private PropertyNotifier(object source, string?sourceAliase, IPropertyNotifier?parentNotifier, ConcurrentDictionary <PropertyNoticeNamedKey, object>?propertyValues, ConcurrentDictionary <PropertyNoticeNamedKey, Func <object> >?propertyFuncs) { _propertyValues = propertyValues ?? new ConcurrentDictionary <PropertyNoticeNamedKey, object>(); _propertyFuncs = propertyFuncs ?? new ConcurrentDictionary <PropertyNoticeNamedKey, Func <object> >(); _baseKey = new TypeNamedKey(source.GetType(), sourceAliase); Source = source; SourceAliase = sourceAliase; ParentNotifier = parentNotifier; }
/// <summary> /// 构造一个 <see cref="ShardingProperty"/>。 /// </summary> /// <param name="key">给定的属性键。</param> /// <param name="strategy">给定的 <see cref="IShardingStrategy"/>。</param> public ShardingProperty(TypeNamedKey key, IShardingStrategy strategy) { Key = key; Strategy = strategy; }
/// <summary> /// 构造一个 <see cref="PropertyNoticeNamedKey{TSource}"/>。 /// </summary> /// <param name="propertyName">给定的属性名称。</param> /// <param name="baseKey">给定的 <see cref="TypeNamedKey{TSource}"/> 基础键。</param> public PropertyNoticeNamedKey(string propertyName, TypeNamedKey <TSource> baseKey) : base(propertyName, baseKey) { BaseKey = baseKey; }