2016-06-10 2 views
0

я следующий блок кода в моем приложении:C# - «используя» утверждение не представляется признать

try 
{ 
    string extractPath = @"C:\Documents"; 
    using (ZipArchive zip = ZipFile.Open(zipFP, ZipArchiveMode.Read)) 
     foreach(ZipArchiveEntry entry in zip.Entries) 
     { 
      try 
      { 
       extractedPDF = System.IO.Path.Combine(extractPath, entry.FullName); 
       entry.ExtractToFile(extractedPDF, true); 
      } 
      catch (System.IO.IOException) 
      { 
       Console.WriteLine("File already exists... "); 
       Console.WriteLine("Error during extraction... "); 
      } 
     } 
    Console.WriteLine("PDF extracted from ZIP: '{0}'...", string.Concat(extractPath, zipFP)); 
    PdfPanel.OpenFile(extractedPDF); 
}catch(AccessViolationException ex) 
{ 
    Console.WriteLine("Can't display a zip in the PDF panel... " + ex.InnerException); 
} 

На данный момент я получаю ошибку компиляции на using & foreach линий, основные моменты ZipArchive, ZipFile, ZipArchiveMode & ZipArchiveEntry.

Ошибка компиляции говорит:

Тип или пространство имен имя «ZipArchive» не может быть найден (вы пропали без вести с помощью директивы или ссылка на сборку

Но у меня есть using? заявление для System.IO.Compression в верхней части этого файла, и я уверен, что я добавил все ссылки и другие с помощью операторов, которые мне нужны для кода ... Я скопировал этот код из отдельного полностью работающего проекта и проверили, что я добавил все недостающие using заявлений и ссылок из этого проекта.

Что еще может вызвать эту проблему? Почему компилятор не понимает, что я using пакет System.IO.Compression?

+1

Вы добавили 'using System.IO.Compression;' в верхней части файла? – MikeT

+3

Вы добавили 'System.IO.Compression' в свою папку * References * также? –

+0

@ S.Akbari, это отсортировано - спасибо очень! – someone2088

ответ

1

Вам необходимо добавить ссылку на сборку. В обозревателе решений в вашем проекте щелкните правой кнопкой мыши ссылку -> Добавить ссылку. Найдите System.IO.Compression в списке Framework Assembly. Установите флажок в поле и нажмите OK.

+0

Yep- это было, как @ S.Akbari упомянул в своем комментарии. – someone2088

Смежные вопросы