错误'类型Aspose.Words.Document'未定义。在尝试编译时

时间:2010-11-11 19:30:02

标签: .net visual-studio assemblies reference aspose

在visual studio中,我创建了对Aspose程序集的引用,并在我的代码中使用了Document类。它在设计时看起来很好,但是当我去编译时,我得到错误'Type 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

4 个答案:

答案 0 :(得分:1)

我发现它必定是因为dll的目标是与项目中指定的框架不同的框架。我创建了一个新的控制台应用程序,其目标是3.5而不是4.0,它开始工作。

答案 1 :(得分:0)

是否有多个库可供参考?另外,您的进口声明在哪里?

答案 2 :(得分:0)

检查您是否引用了正确的Aspose dll(包含Document类的那个)。验证Document类是否在Aspose.Words名称空间下。

Reflector内打开dll以验证这些内容。

答案 3 :(得分:0)

确保将程序集上的Copy Local设置为true,并将Embed Intrerop设置为false。