public override void CompileTimeInitialize(Type type, AspectInfo aspectInfo) { this.explicitDependencyMap = analyzer.Value.AnalyzeType(type); this.fieldValueComparer = new FieldValueComparer(type); this.childPropertyChangedProcessor = ChildPropertyChangedProcessor.CompileTimeCreate( type, analyzer.Value.MethodFieldDependencies, this.fieldValueComparer, this.explicitDependencyMap); }
public override object CreateInstance(AdviceArgs adviceArgs) { NotifyPropertyChangedAttribute clone = (NotifyPropertyChangedAttribute)base.CreateInstance(adviceArgs); clone.initialized = false; clone.childPropertyChangedProcessor = ChildPropertyChangedProcessor.CreateFromPrototype(this.childPropertyChangedProcessor, adviceArgs.Instance); return(clone); }