我试图找出如何首先检查Dup的键添加错误
在我的循环经历每一个文件我有一个集合,并试图将其添加到收藏使用ZipFile,我已经得到了:
using (var zip = new ZipFile())
{
foreach(...)
{
var tryFile = Directory.
GetFiles(fileLocalization, fileName,
SearchOption.TopDirectoryOnly);
if (!string.IsNullOrEmpty(file[0]))
zip.AddItem(file[0], GetPathStructure(file.NameInContainer));
}
}
zip文件类型是从Ionic.Zip.dll
的问题是,AddItem
错误了,我得到相同的键的项已被添加。因此,例如到底尝试添加该键这是已经在这个zip字典前面添加:
“C:\ WWW \文件\ 233272个\练习文件\ SampleCode \原件\ MyTest.cs”
我不能进入检查dup工作正常......它stil试图在循环中添加两次。
如何在尝试添加前检查任何文件[0]?我试过LINQ .Any()
,但是如果我甚至可以使用LINQ来完成这个功能,就无法获得正确的语法。
我试过,但我不这样做的权利语法:
if (!string.IsNullOrEmpty(tryFile[0]) && !zip.Contains(tryFile[0])
也试过
if (!string.IsNullOrEmpty(tryFile[0]) && !zip.Any(zip[tryFile[0]])
也试过
if (!string.IsNullOrEmpty(tryFile[0]) && !zip.ContainsEntry(tryFile[0]))