我的要求
我有一个列表,只有在满足特定条件时才会执行。
var list = data.Where(!t.Area.HasValue || t => t.Area == response.Area).Select(t => new Status()
{
PK = t.PK,
Area = t.Area,
Description = t.Description
//other stuff
}).ToList();
我想要的
这个列表现在已经可以正常使用,但是我希望对它进行一些修改。其中一个变量,我想运行一个 if-else 语句,并且该变量将成为 if-else 语句执行的返回结果。
var list = data.Where(!t.Area.HasValue || t => t.Area == response.Area).Select(t => new Status()
{
PK = t.PK,
Area = t.Area,
Description, //<---------------returns the value of executed if-else statement
//if (t.Area.HasValue) Description = a;
//else Description = b;
OtherStuff = t.OtherStuff
}).ToList();
我的问题是:在哪里放置if-else条件才能正确执行它?
我尝试把if-else语句放在实际变量的位置之间的两个逗号中。
我尝试使用临时变量,返回其结果,但我不想在我的列表中有这个临时变量。
在Where()之前,我尝试添加额外的条件,后来意识到这是一组条件,用于实际执行该列表。
搜寻SO和互联网没有得到我所期望的结果(希望我没有使用错误的搜索条件)。