将for循环转换为lambda

Meg*_*ind -4 c# lambda

我想找到1000或以下3或5的所有倍数的总和.

我传统的循环方式是

for(int i=0;i<1000;i++)
{
    if ((i % 3 == 0) || (i % 5 == 0))
    {
        result += i;
    }
}
Console.WriteLine(result);
Run Code Online (Sandbox Code Playgroud)

我怎样才能使用lambda呢?

Ode*_*ded 8

Enumerable.Range(0, 1000).Where(i => i % 3 == 0 || i % 5 == 0).Sum()
Run Code Online (Sandbox Code Playgroud)

要么

Enumerable.Range(0, 1000).Sum(i => i % 3 == 0 || i % 5 == 0 ? i : 0)
Run Code Online (Sandbox Code Playgroud)