为什么 apps2 保持空白?
IEnumerable<AppFile> apps2 = Enumerable.Empty<AppFile>();
var a2 = new AppFile();
a2.Name = Path.GetFileNameWithoutExtension(@"c:\ConsoleApp1.exe");
a2.Path = GetTargetPath(@"c:\ConsoleApp1.exe");
apps2 = Enumerable.Empty<AppFile>();
var af2 = new List<AppFile>() { a2 }; //здесь af2 не пустой
apps2.Concat(af2);
Concat
返回一个新序列而不是修改前一个序列(像所有操作一样Linq
),因此您需要显式存储结果: