相关疑难解决方法(0)

通过IEnumerable特性执行Action <T>?

我有这个代码:

 int[] g = new int[3] { 1, 2, 3 };
 g.ToList().ForEach(f=>Console.Write(f));
Run Code Online (Sandbox Code Playgroud)

对于数组中的每个项目,我想执行Action....

int[]已经实施Ienumerable.

我想执行一个没有" ToList()" 的动作

是否有任何其他溶液(用一个代码行)(使用其而无需toList?即做IEnumerable特性)

c# linq action .net-4.0

1
推荐指数
1
解决办法
1454
查看次数

为什么这个简单的LINQ表达式不起作用?

这一定很简单,但我不明白为什么不允许这样做:

var testList = new List<int> { 2, 3, 400, 304, 50, 41 };
testList.Select(x => Console.WriteLine(x));
Run Code Online (Sandbox Code Playgroud)

但这很好:

testList.Select(x => x * 2);
Run Code Online (Sandbox Code Playgroud)

我在哪里误解LINQ导致这种混乱?

c# linq

1
推荐指数
2
解决办法
150
查看次数

在列表<>上选择和ForEach

我是C#的新手,并试图使用lambda表达式.

我有一个对象列表.我想从列表中选择项目并对所选项目执行foreach操作.我知道我可以在不使用lambda表达式的情况下完成它但是想要使用lambda表达式这是可能的.

所以我试图取得类似的结果

        List<UserProfile> users = new List<UserProfile>();
       ..load users with list of users
        List<UserProfile> selecteditem = users.Where(i => i.UserName=="").ToList();
        foreach(UserProfile item in selecteditem)
        {
            item.UserName = "NA";
        }
Run Code Online (Sandbox Code Playgroud)

有可能做到

      users.Where(i => i.UserName=="").ToList().ForEach(i=>i.UserName="NA");
Run Code Online (Sandbox Code Playgroud)

但不是这样的

     users.select(i => i.UserName=="").ForEach(i=>i.UserName="NA");
Run Code Online (Sandbox Code Playgroud)

有人可以解释这种行为..

c# lambda

0
推荐指数
2
解决办法
2万
查看次数

用LINQ表达式替换foreach

所以我有这样的代码:

foreach (var optionValues in productOption.ProductOptionValues)
{
  if (optionValues.ProductOptionValueID > 0)
  {
    unitOfWork.ProductContext.Entry(optionValues).State = EntityState.Modified;
  }
  else
  {
    unitOfWork.ProductContext.Entry(optionValues).State = EntityState.Added;
  }
}
Run Code Online (Sandbox Code Playgroud)

对此的代码审查是我应该看看使用LINQ来做到这一点.

有人可以指点我可以解释使用LINQ更改对象属性的资源吗?

c# linq

0
推荐指数
2
解决办法
188
查看次数

C#Linq对Distinct()方法的结果执行方法

我有这个代码将在Distinct()将返回的每个对象上执行Console.WriteLine(x).

objects.Distinct().ToList().ForEach(x => Console.WriteLine(x));
Run Code Online (Sandbox Code Playgroud)

但是,如何在不使用ToList()的情况下实现相同的功能?

c# linq

0
推荐指数
1
解决办法
661
查看次数

在C#LINQ中的Foreach循环

我想用LINQ ForEach()表达式替换以下代码中的foreach循环:

    List<int> idList = new List<int>() { 1, 2, 3 };

    IEnumerable<string> nameList = new List<string>();

    foreach (int id in idList)
    {
       var Name = db.Books.Where(x => x.BookId == id).Select(x => x.BookName);
        nameList.Add(Name);
    }
Run Code Online (Sandbox Code Playgroud)

任何帮助请!!

c# linq

0
推荐指数
1
解决办法
147
查看次数

Linq OrderBy自定义订单

假设我有以下char数组:

char[] c = new char[] { 'G', 'R', 'D', 'D', 'G', 'R', 'R', 'C', 'D', 'G', 'R', 'R', 'C', 'G', 'R', 'D', 'D', 'G', 'R', 'R', 'C', 'D', 'G', 'R', 'R', 'C' };


c.OrderBy(y => y).ForEach(x => Console.WriteLine(x));
//CCCCDDDDDDGGGGGGRRRRRRRRRR
Run Code Online (Sandbox Code Playgroud)

如何使用linq生成以下订单?

//DDDDDDGGGGGGRRRRRRRRRRCCCC
Run Code Online (Sandbox Code Playgroud)

c# linq

-3
推荐指数
3
解决办法
6774
查看次数

标签 统计

c# ×7

linq ×6

.net-4.0 ×1

action ×1

lambda ×1