어떻게 줄을 확인하십시오. 둘 이상의 문자열을 포함 ("하나")합니까? 예를 들어 select 파일에는 "names"List의 텍스트 요소가있는 행이 들어 있습니다.C# Linq. 문자열 목록을 포함합니다
private void button_Click(object sender, RoutedEventArgs e)
{
List<string> names = new List<string>() { "One", "Two", "Three" };
try
{
var files = from file in Directory.EnumerateFiles(@"D:\Logs\", "*.log", SearchOption.AllDirectories)
from line in File.ReadLines(file)
where line.Contains("One")
select new
{
File = file,
Line = line
};
foreach (var f in files)
{
Debug.WriteLine("{0}\t{1}", f.File, f.Line);
}
//MessageBox.Show(files.Count().ToString() + " record found.");
}
catch (UnauthorizedAccessException UAEx)
{
Console.WriteLine(UAEx.Message);
}
catch (PathTooLongException PathEx)
{
Console.WriteLine(PathEx.Message);
}
}
'line.Contains ("One") || line.Contains ("names")'? – juharr
죄송합니다. 질문을 조금 분명히 해주시겠습니까? 영어가 약간 불분명하다. – LordWilmore
'Contains' 대신'any'을 사용해야합니다 – Neil