在不同时间循环列出和访问不同属性的 C# 方法

Sca*_*ays 3 c# for-loop list

所以我有一个List<Product>我需要循环并计算一些东西。每个Product都有属性PriceTax。我想要做的是有一个方法,我可以循环遍历列表并计算总价和总税,但我不想为此编写方法。

目前我有这个:

private double calculateTotalPrice()
        {
            List<Product> temp = this.GetList();
            double price = 0;
            for(int i = 0; i < Count; i++)
            {
                price += temp[i].Price;
            }

            return price;
        }
Run Code Online (Sandbox Code Playgroud)

但是使用这种方法,我需要一种计算价格的方法和另一种计算税收的方法。是否可以更改此方法,以便我可以调用它并在某一时刻计算价格,下次调用它来计算税收?我希望在不使用 If 语句的情况下执行此操作,但我不确定这是否可行。

感谢任何帮助。

编辑:拼写

Pav*_*ski 6

您可以使用System.Linq命名空间中的现有Sum方法,而无需自己编写

double price = temp.Sum(item => item.Price);
double tax = temp.Sum(item => item.Tax);
Run Code Online (Sandbox Code Playgroud)