来自父列表参数的子列表,没有重复项C#VS2013

时间:2015-09-29 18:27:52

标签: c# linq list visual-studio-2013 duplicates

我正在开展小额费用跟踪计划。我们的想法是拥有一个包含可以操作并用于执行计算的Expense对象的列表。

我能够无问题地创建List,并用几个虚拟费用填充它。我的开支按类别Expense.expenseType分组,以允许我进行分析计算,因此我尝试制作另一个List,用于存储类别名称和相关计算值。类别名称列表旨在删除重复项,但到目前为止我还没有成功填充它。

我创建List的方法是定义一个Category类,它只包含categoryName的字符串参数和categoryTotal的float,尽管后者初始化为0.00。然后,我有一个For循环,将名称复制到List和第二个For循环,一旦它们按字母顺序排列,就会根据名称删除索引。我尝试了不同的变体,但最终我得到的是一个超出范围的索引,或者是一个减少但仍然重复的categoryName列表。

真的希望得到一些建议,以便我可以继续使用代码。我没有添加实际代码,因为我是C#/ VS的新手,而且我可能正在接近问题。

编辑1:根据我得到的反馈,我正在使用的功能如下:

public void getCategories(List<Category> passedCategories) 
{
    passedCategories = passedCategories.GroupBy(Category =>Category.strName)
                             .Select(gr => new Category
                             {
                                 strName = gr.Key,
                                 fltTotal = gr.Sum(ex => ex.Value)
                             });
}

这个功能不起作用,我有几点我想澄清,我相信还有其他我错过了。

传递的类别是具有三个参数的类别列表 - strName,fltTotal和fltPercent。当通过临时类别填充整个列表时,后两个当前设置为零。 strName正从具有更多参数的费用列表中复制。由于类别名称将在费用列表中重复,我试图删除所有重复项,以便我可以只有不同的类别。我拿出了var,因为我正在通过List,我不应该这样做吗?我错过了什么?

再次感谢您的帮助,

Yusif Nurizade

1 个答案:

答案 0 :(得分:0)

您需要的是以下内容。我说了些什么,因为我没有看到你的代码,我不得不想象它。例如,我不知道物业的名称是否有费用。我以为这叫做Value。

string.replace(/\[\/b]/gi,"</b>");