我想检索数据,并将其显示在有条件的(子项下面的子项)中.
这样定义的数据项:ID |标题|家长ID
这样定义的数据项:ID |标题|家长ID
我所做的是首先检索所有项目然后排序.
使用linq有更好的方法吗?
protected void Page_Load(object sender,EventArgs e) { List<Category> list2 = new List<Category>(); ContModel modeltx = new ContModel(); var ret = modeltx.Categories.ToList(); GetCategoryList(0,ret,list2); string str=""; foreach (Category cat in list2) { str=str+cat.Title+"\n"; TextBox1.Text = str; } } private void GetCategoryList(int iCurID,int iDepth,List<Category> li,List<Category> newList) { Category tmp; string strOffset = ""; foreach (Category cat in li) { if ((cat.ParentId) == iCurID) { for (int i = 1; i <= iDepth; i++) strOffset = strOffset + "-"; strOffset = strOffset + cat.Title; tmp = cat; tmp.Title = strOffset; newList.Add(tmp); strOffset = ""; GetCategoryList(cat.CategoryID,iDepth + 1,li,newList); } } }
更新:
如果数据的大小很大,我想使用分页怎么样?
排序之前我不能Page(.Skip(PageSize * PageIndex).Take(PageSize))
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。