gpt4 book ai didi

c# - 使用 Lambda 表达式计算 HttpFileCollection 的总内容长度

转载 作者:行者123 更新时间:2023-11-30 19:50:22 25 4
gpt4 key购买 nike

我的代码是这样的:

HttpFileCollection files

而不是遍历每个文件并添加 file.ContentLength 以获得所有内容的总长度,例如

        int totalLength = 0;
for (int i = 0; i < files.Count; i++)
{
totalLength += files[i].ContentLength;
}

有没有一种方法可以用 lambda 表达式做到这一点,所以我有类似的东西..

int totalLength = files.[some sort of delegate here to do the addition].

提前致谢。

编辑:HttpFileCollection 有一个 GetEnumeratorMethod 但它是否需要实现 IEnumerable 才能使用 lambda 表达式?

最佳答案

您可以使用 LINQ:

int totalLength = files.AllKeys.Select(k => files[k]).Sum(f => f.ContentLength);

不幸的是,HttpFileCollection 的枚举器返回一个字符串枚举。为了获得实际对象(HttpPostedFile),您需要按键访问“字典”。这会将枚举器转换为 HttpPostedFile 实例的枚举(通过 Select),然后对内容长度求和。

关于c# - 使用 Lambda 表达式计算 HttpFileCollection 的总内容长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2380946/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com