0
- 私はファイル名のリストを持っています(フルパスではありません)。 (IEnumerable < string>)
- フルファイルパスを含む文字列プロパティ(FullPath)を含むクラスのリストがあります。 (List < CustomClass>)
CustomClass FullPathプロパティがファイル名のリストに存在する場合は、削除/無視する必要があります。このC#.NET4コードを改善するにはどうすればよいですか?
これまでのところ私はこれを持っている:
this.myClasses.Add(new MyClass() { FullPath = @"C:\WorkingDirectory\File1.txt" });
files = new List<string>(new string[] { "File1.txt", "File2.txt", "File3.txt"})
List<string> newFiles = (from file in files
where File.Exists(Path.GetFullPath(file))
select Path.GetFullPath(file))
.ToList();
newFiles.RemoveAll(delegate(string path)
{
var r = from myClass in this.myClasses
where myClass.FullPath == path
select myClass;
return r.Count() > 0;
});
NEWFILESは今FILE2 FILE3との完全なパスが含まれています。
はい、すべて存在する必要があり、完全なパスが必要です。だからあなたの事例4は、おそらく私が望む方法です。 –
@CS:はい、例4はあなたが望むものです。 –