【问题标题】:Populate TreeView from Linq - adds only the last parent item从 Linq 填充 TreeView - 仅添加最后一个父项
【发布时间】:2014-07-30 13:46:06
【问题描述】:

我正在使用 Linq 从数据库中加载 TreeView,我的代码只添加了最后一个父项,但该父项下的所有类别项。

我在 Linq 中存储的程序运行良好,我在其他地方使用它们。

有人可以帮我在这里找到我的错误吗?

谢谢

LinqtoDBDataContext db = new LinqtoDBDataContext();
var parents = db.GetParentCategories();

TreeNode parentNode = null;
foreach (var parent in parents)
{
    parentNode = new TreeNode(parent.ParentCatName.ToString());
    var categories = db.GetCategories(parent.ParentCatID);
    foreach (var category in categories)
    {
        TreeNode childNode = new TreeNode(category.CategoryName.ToString());
        parentNode.ChildNodes.Add(childNode);
        var products = db.GetProductsInCategory(category.CategoryID);
        foreach (var product in products)
        {
            TreeNode child3Node = new TreeNode(product.ProductName.ToString());
            childNode.ChildNodes.Add(child3Node);
       }
    }
}
TreeViewProducts.Nodes.Add(parentNode);

【问题讨论】:

    标签: c# asp.net .net linq treeview


    【解决方案1】:

    您正在为每个父母重置您的 parentNode。将 TreeViewProducts.Nodes.Add(parentNode); 移动到您的 foreach 循环中。

    【讨论】:

    • 谢谢,你太棒了!
    猜你喜欢
    • 2021-12-01
    • 2017-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-09
    • 1970-01-01
    • 2016-12-31
    • 2021-03-02
    相关资源
    最近更新 更多