public ReportItem Find(string uniqueName) { if (uniqueName != null && uniqueName.Length > 0) { if (uniqueName.Equals(base.UniqueName)) { return(this); } char[] separator = new char[1] { 'a' }; string[] array = uniqueName.Split(separator); if (array != null && array.Length >= 2) { object obj = (this.m_pageSectionInstance != null) ? ((ISearchByUniqueName)this.m_pageSectionInstance) : ((ISearchByUniqueName)this.m_pageSectionDef); NonComputedUniqueNames nonComputedUniqueNames = null; int num = -1; for (int i = 1; i < array.Length; i++) { IIndexInto indexInto = obj as IIndexInto; if (indexInto == null) { obj = null; break; } num = ReportItem.StringToInt(array[i]); NonComputedUniqueNames nonComputedUniqueNames2 = null; obj = indexInto.GetChildAt(num, out nonComputedUniqueNames2); if (nonComputedUniqueNames == null) { nonComputedUniqueNames = nonComputedUniqueNames2; continue; } if (nonComputedUniqueNames.ChildrenUniqueNames == null || num < 0 || num >= nonComputedUniqueNames.ChildrenUniqueNames.Length) { return(null); } nonComputedUniqueNames = nonComputedUniqueNames.ChildrenUniqueNames[num]; } if (obj == null) { return(null); } if (obj is AspNetCore.ReportingServices.ReportProcessing.ReportItem) { AspNetCore.ReportingServices.ReportProcessing.ReportItem reportItemDef = (AspNetCore.ReportingServices.ReportProcessing.ReportItem)obj; return(ReportItem.CreateItem(uniqueName, reportItemDef, null, base.RenderingContext, nonComputedUniqueNames)); } ReportItemInstance reportItemInstance = (ReportItemInstance)obj; return(ReportItem.CreateItem(uniqueName, reportItemInstance.ReportItemDef, reportItemInstance, base.RenderingContext, nonComputedUniqueNames)); } return(null); } return(null); }
public ReportItem Find(string uniqueName) { if (uniqueName != null && uniqueName.Length > 0) { int num = ReportItem.StringToInt(uniqueName); if (num < 0) { return(null); } return(this.m_renderingContext.FindReportItemInBody(num)); } return(null); }