2010-11-11 3 views
0

В визуальной студии я создаю ссылку на сборку Aspose и использую класс Document в своем коде. Он отлично выглядит во время разработки, но когда я иду на компиляцию, я получаю сообщение об ошибке «Тип Aspose.Words.Document» не определен. Если я делаю что-либо, что изменяет файл проекта, например, добавляет или удаляет ссылку или добавляет новый файл, ошибки уходят ... пока я не попытаюсь снова скомпилировать.Ошибка 'Тип Aspose.Words.Document' не определен. ' при попытке скомпилировать

Кто-нибудь еще видел это странное поведение и знает, как его исправить? Вот мой код, если это имеет значение, но оно не становится намного проще:

Module Module1 

    Sub Main() 

     Dim license As New Aspose.Words.License() 
     license.SetLicense("Aspose.Words.lic") 

     Dim files = My.Resources.files.Split() 

     For Each file In files 
      If file <> "" Then 
       Dim changed As Boolean = False 
       Console.Write("Processing " & file & "...") 

       Dim doc = New Aspose.Words.Document(file) 

       If doc.Range.FormFields("CurrDate") IsNot Nothing Then 
        doc.Range.FormFields("CurrDate").TextInputType = Aspose.Words.Fields.TextFormFieldType.RegularText 
        doc.Range.FormFields("CurrDate").TextInputFormat = "" 
        doc.Save(file) 
        Console.WriteLine("done.") 
       Else 
        Console.WriteLine("not applicable.") 
       End If 

      End If 

     Next 
     Console.Read() 
    End Sub 

End Module 

ответ

1

Я обнаружил, что это должно быть потому, что dll нацеливается на другую структуру, чем то, что было указано в проекте. Я создал новое консольное приложение, которое предназначалось для 3.5 вместо 4.0, и оно начало работать.

0

Есть несколько библиотек для ссылки? Также, где ваше заявление о ввозе?

+0

Только одна библиотека, и мне не нужен оператор импорта, потому что они полностью квалифицированы, не так ли? – adam0101

0

Убедитесь, что вы ссылаетесь на правильную DLL-документ Aspose (тот, который содержит класс Document). Убедитесь, что класс Document находится в пространстве имен Aspose.Words.

Crack открыть DLL внутри Reflector, чтобы проверить этот материал.

+0

Я использую правильную dll. Класс документа отображается в intellisense, когда я сначала добавляю dll. После того, как я попытаюсь скомпилировать, это похоже на то, что ссылка была удалена. В пространстве intellisense больше не появляется пространство имен «Aspose». Если я отброшу ссылку и добавлю ее обратно, ошибки исчезнут, а intellisense снова увидит ее - пока я не попытаюсь скомпилировать ее снова. – adam0101

+0

Звучит как проблема с вашей средой. Это происходит с другими DLL? –

0

Удостоверьтесь, что у Copy Local на сборке установлено значение true, а для Embed Intrerop установлено значение false.

+0

Где эти настройки? – adam0101

+0

@ adam0101 В проводнике решений щелкните правой кнопкой мыши по сборке по ссылкам, перейдите к свойствам, и вы увидите их там. –

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