CompilerError Class
Represents a compiler error or warning.
System.CodeDom.Compiler.CompilerError
System.Workflow.ComponentModel.Compiler.WorkflowCompilerError
Assembly: System (in System.dll)
The CompilerError type exposes the following members.
| Name | Description | |
|---|---|---|
![]() | CompilerError | Initializes a new instance of the CompilerError class. |
![]() | CompilerError(String, Int32, Int32, String, String) | Initializes a new instance of the CompilerError class using the specified file name, line, column, error number, and error text. |
| Name | Description | |
|---|---|---|
![]() | Column | Gets or sets the column number where the source of the error occurs. |
![]() | ErrorNumber | Gets or sets the error number. |
![]() | ErrorText | Gets or sets the text of the error message. |
![]() | FileName | Gets or sets the file name of the source file that contains the code which caused the error. |
![]() | IsWarning | Gets or sets a value that indicates whether the error is a warning. |
![]() | Line | Gets or sets the line number where the source of the error occurs. |
| Name | Description | |
|---|---|---|
![]() | Equals(Object) | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) |
![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) |
![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() | ToString | Provides an implementation of Object's ToString method. (Overrides Object.ToString.) |
CompilerError represents a compiler error or a warning that has been returned by the compiler.
Note |
|---|
This class contains an inheritance demand at the class level that applies to all members. A SecurityException is thrown when the derived class does not have full-trust permission. For details about inheritance demands, see Inheritance Demands. |
The following example compiles a CodeDOM program graph and provides an example of how to programmatically access CompilerError data.
Imports System Imports System.CodeDom Imports System.CodeDom.Compiler Imports Microsoft.CSharp Namespace CompilerError_Example _ Class Class1 Shared Sub Main() ' Output some program information using Console.WriteLine. Console.WriteLine("This program compiles a CodeDOM program that incorrectly declares multiple data") Console.WriteLine("types to demonstrate handling compiler errors programatically.") Console.WriteLine("") ' Compile the CodeCompileUnit retrieved from the GetCompileUnit() method. Dim provider As CodeDomProvider provider = CodeDomProvider.CreateProvider("CSharp") ' Initialize a CompilerParameters with the options for compilation. Dim assemblies() As String = New [String]() {"System.dll"} Dim options As New CompilerParameters(assemblies, "output.exe") ' Compile the CodeDOM graph and store the results in a CompilerResults. Dim results As CompilerResults = provider.CompileAssemblyFromDom(options, GetCompileUnit()) ' Compilation produces errors. Print out each error. Console.WriteLine("Listing errors from compilation: ") Console.WriteLine("") Dim i As Integer For i = 0 To results.Errors.Count - 1 Console.WriteLine(results.Errors(i).ToString()) Next i End Sub Public Shared Function GetCompileUnit() As CodeCompileUnit ' Create a compile unit to contain a CodeDOM graph. Dim cu As New CodeCompileUnit() ' Create a namespace named TestSpace. Dim cn As New CodeNamespace("TestSpace") ' Declare a new type named TestClass. Dim cd As New CodeTypeDeclaration("TestClass") ' Declare a new member string field named TestField. Dim cmf As New CodeMemberField("System.String", "TestField") ' Add the field to the type. cd.Members.Add(cmf) ' Declare a new member method named TestMethod. Dim cm As New CodeMemberMethod() cm.Name = "TestMethod" ' Declare a string variable named TestVariable. Dim cvd As New CodeVariableDeclarationStatement("System.String1", "TestVariable") cm.Statements.Add(cvd) ' Cast the TestField reference expression to string and assign it to the TestVariable. Dim ca As New CodeAssignStatement(New CodeVariableReferenceExpression("TestVariable"), New CodeCastExpression("System.String2", New CodeFieldReferenceExpression(New CodeThisReferenceExpression(), "TestField"))) ' This code can be used to generate the following code in C#: ' TestVariable = ((string)(this.TestField)); cm.Statements.Add(ca) ' Add the TestMethod member to the TestClass type. cd.Members.Add(cm) ' Add the TestClass type to the namespace. cn.Types.Add(cd) ' Add the TestSpace namespace to the compile unit. cu.Namespaces.Add(cn) Return cu End Function End Class End Namespace
- SecurityPermission
for deriving from the CompilerError class. Demand value: InheritanceDemand; Named Permission Sets: FullTrust.
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.



Note