private void CopyTo(ReportObject clone, ICollection <string> membersToExclude) { foreach (MemberMapping member in ((StructMapping)TypeMapper.GetTypeMapping(GetType())).Members) { if (member.HasValue(this) && (membersToExclude == null || !membersToExclude.Contains(member.Name))) { object value = member.GetValue(this); member.SetValue(clone, CloneObject(value)); } } }
public virtual object DeepClone() { Type type = GetType(); PropertyStore propertyStore = new PropertyStore(); ReportObject reportObject = (ReportObject)Activator.CreateInstance(type, BindingFlags.Instance | BindingFlags.NonPublic, null, new object[1] { propertyStore }, null); propertyStore.SetOwner(reportObject); CopyTo(reportObject, null); return(reportObject); }
public void GetDependencies(IList <ReportObject> dependencies, ReportObject parent) { ReportExpressionUtils.GetDependencies(dependencies, parent, Expression); }
internal void SetOwner(ReportObject owner) { m_owner = owner; }
public PropertyStore(ReportObject owner) { m_owner = owner; }
internal static void GetDependencies(IList <ReportObject> dependencies, ReportObject parent, string Expression) { }