Trim() 使用动态查询语言生成修剪后的 IQueryable字符串列表。

发布于 2024-09-08 18:47:40 字数 195 浏览 2 评论 0原文

这是可能的,还是我只是想过度缩短我的代码?

我想这可能是这样的:

IQueryable<string> trimmedStrs = untrimmedStrsArr.AsQueryable<string>().All(s => s.Trim());

但这不好:(

Is this possible, or am I just trying to way overly shorten my code?

I thought it might be something like:

IQueryable<string> trimmedStrs = untrimmedStrsArr.AsQueryable<string>().All(s => s.Trim());

But that's no good :(

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

平安喜乐 2024-09-15 18:47:40

我认为您想要的只是:

IEnumerable<string> trimmed = untrimmedStrsArr.Select(s => s.Trim());

如果您有内存中的集合(例如列表或数组),那么您可以使用 IEnumerable 的 LINQ 方法来处理它们,因为这些在内存中处理数据。 Queryable 在使用数据库时非常有用(例如使用 LINQ to SQL)。

您可以在 MSDN 上找到有关各种方法的详细文档。下面应该解释为什么需要 Select 而不是 All

  • All - 确定序列的所有元素是否满足条件。
  • Select - 将序列的每个元素投影到新的表单中。

I think you want just:

IEnumerable<string> trimmed = untrimmedStrsArr.Select(s => s.Trim());

If you have in-memory collection such as list or array, then you can work with them using LINQ methods for IEnumerable<T>, because these process data in memory. Queryable is useful when working with databases (e.g. using LINQ to SQL).

You can find a good documentation on various methods on MSDN. The following should explain why you need Select instead of All:

  • All - Determines whether all elements of a sequence satisfy a condition.
  • Select - Projects each element of a sequence into a new form.
故事未完 2024-09-15 18:47:40

这似乎对我有用:

IQueryable<string> trimmed = untrimmed.AsQueryable<string>().Select(m => m.Trim());

This one seemed to work for me:

IQueryable<string> trimmed = untrimmed.AsQueryable<string>().Select(m => m.Trim());
忘年祭陌 2024-09-15 18:47:40

All 不是执行此操作的正确方法。它是一个谓词,如果集合中的每个项目都符合您在参数中给出的条件,则返回 true。使用

IQueryable<string> trimmedStrs = untrimmedStrsArr.AsQueryable<string>().Select(s => s.Trim()); 

All is not the right method to do this. It is a predicate, returning true if every item in the collection matches the condition you give in the parameter. Use

IQueryable<string> trimmedStrs = untrimmedStrsArr.AsQueryable<string>().Select(s => s.Trim()); 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文