private static string ParseImplNotAjax(PageInfo pageInfo, ContextInfo contextInfo, string channelIndex, string channelName, int upLevel, int topLevel, string groupChannel, string groupChannelNot, string title, bool isShowContentNum, bool isShowTreeLine, string currentFormatString) { var channelId = StlDataUtility.GetNodeIdByLevel(pageInfo.PublishmentSystemId, contextInfo.ChannelId, upLevel, topLevel); channelId = StlCacheManager.NodeId.GetNodeIdByChannelIdOrChannelIndexOrChannelName(pageInfo.PublishmentSystemId, channelId, channelIndex, channelName); var channel = NodeManager.GetNodeInfo(pageInfo.PublishmentSystemId, channelId); var target = ""; var htmlBuilder = new StringBuilder(); htmlBuilder.Append(@"<table border=""0"" cellpadding=""0"" cellspacing=""0"" style=""width:100%;"">"); var theNodeIdList = DataProvider.NodeDao.GetNodeIdListByScopeType(channel, EScopeType.All, groupChannel, groupChannelNot); var isLastNodeArray = new bool[theNodeIdList.Count]; var nodeIdArrayList = new List <int>(); var currentNodeInfo = NodeManager.GetNodeInfo(pageInfo.PublishmentSystemId, pageInfo.PageNodeId); if (currentNodeInfo != null) { nodeIdArrayList = TranslateUtils.StringCollectionToIntList(currentNodeInfo.ParentsPath); nodeIdArrayList.Add(currentNodeInfo.NodeId); } foreach (int theNodeId in theNodeIdList) { var theNodeInfo = NodeManager.GetNodeInfo(pageInfo.PublishmentSystemId, theNodeId); var nodeInfo = new NodeInfo(theNodeInfo); if (theNodeId == pageInfo.PublishmentSystemId && !string.IsNullOrEmpty(title)) { nodeInfo.NodeName = title; } var isDisplay = nodeIdArrayList.Contains(theNodeId); if (!isDisplay) { isDisplay = (nodeInfo.ParentId == channelId || nodeIdArrayList.Contains(nodeInfo.ParentId)); } var selected = (theNodeId == channelId); if (!selected && nodeIdArrayList.Contains(nodeInfo.NodeId)) { selected = true; } var hasChildren = (nodeInfo.ChildrenCount != 0); var linkUrl = PageUtility.GetChannelUrl(pageInfo.PublishmentSystemInfo, theNodeInfo); var level = theNodeInfo.ParentsCount - channel.ParentsCount; var item = new StlTreeItemNotAjax(isDisplay, selected, pageInfo, nodeInfo, hasChildren, linkUrl, target, isShowTreeLine, isShowContentNum, isLastNodeArray, currentFormatString, channelId, level); htmlBuilder.Append(item.GetTrHtml()); } htmlBuilder.Append("</table>"); pageInfo.AddPageScriptsIfNotExists(PageInfo.JsAgStlTreeNotAjax, StlTreeItemNotAjax.GetNodeTreeScript(pageInfo)); return(htmlBuilder.ToString()); }