public override string ToString() { if (SelfReference.Equals(default(ClrReference))) { return(ToStringNoReference()); } var clrObject = SelfReference.Object; string val = (clrObject.Type.ElementType == ClrElementType.String && !IsAlreadyVisited) ? clrObject.GetStringValue() : ""; if (SelfReference.Field != null) { val += $" Field: {SelfReference.Field.Name}"; } return($"Address: 0x{clrObject.Address:X16} Type: {clrObject.Type.Name} Visited: {IsAlreadyVisited} {val}"); }
protected bool DetailTargetScopeMatched(Microsoft.ReportingServices.ReportIntermediateFormat.DataRegion dataRegionDef, IReference <IScope> outerScope, bool isColumnAxis, int index) { if (m_odpContext.RuntimeSortFilterInfo != null) { IReference <RuntimeSortFilterEventInfo> reference = m_odpContext.RuntimeSortFilterInfo[index]; using (reference.PinValue()) { RuntimeSortFilterEventInfo runtimeSortFilterEventInfo = reference.Value(); if (runtimeSortFilterEventInfo != null) { List <IReference <RuntimeDataRegionObj> > list = null; List <int> list2 = null; int num = -1; if (isColumnAxis) { list = runtimeSortFilterEventInfo.DetailColScopes; list2 = runtimeSortFilterEventInfo.DetailColScopeIndices; num = dataRegionDef.CurrentColDetailIndex; } else { list = runtimeSortFilterEventInfo.DetailRowScopes; list2 = runtimeSortFilterEventInfo.DetailRowScopeIndices; num = dataRegionDef.CurrentRowDetailIndex; } if (list != null) { for (int i = 0; i < list.Count; i++) { if (SelfReference.Equals(list[i]) && num == list2[i]) { return(true); } } } } } } return(false); }