2
LINQ查詢結果中刪除我有一個方法文件的搜索:從取決於查詢文本
public IActionResult FilesContainingText(string query)
{
//...
var results = files.Where(f => f.FileName.ToLower().Contains(query.ToLower()));
目前這返回包含query
文本的所有文件。但是,我想從結果列表中刪除一些以「新」開頭的文件,但前提是query
字符串不以「新」開頭。
E.g.目前下列文件:
NewFile1
NewFile2
File1
File2
目前,它會返回所有4個結果,如果query
是「文件」,但只有前兩個如果query
是「newfile中」。我想要的是當query
作爲「文件」提供時,它應該只返回File1 & File2的結果。希望這是有道理的。
我曾嘗試以下,但它不刪除值:
if(!query.ToLower().Contains("new"))
{
results = results.Where(x => !x.FileName.Contains("new"));
}
我想你忘了小寫'FileName'。它應該是'x =>!x.FileName.ToLower()。包含(「new」)' – Sweeper