Compiler.Compile(String[], String[], String, String[], IDictionary) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Compiles the given C# sources to the specified destination file.
public:
static cli::array <Microsoft::CSharp::CompilerError ^> ^ Compile(cli::array <System::String ^> ^ sourceTexts, cli::array <System::String ^> ^ sourceTextNames, System::String ^ target, cli::array <System::String ^> ^ imports, System::Collections::IDictionary ^ options);
public static Microsoft.CSharp.CompilerError[] Compile (string[] sourceTexts, string[] sourceTextNames, string target, string[] imports, System.Collections.IDictionary options);
static member Compile : string[] * string[] * string * string[] * System.Collections.IDictionary -> Microsoft.CSharp.CompilerError[]
Public Shared Function Compile (sourceTexts As String(), sourceTextNames As String(), target As String, imports As String(), options As IDictionary) As CompilerError()
Parameters
- sourceTexts
- String[]
An array of type string, each with C# code.
- sourceTextNames
- String[]
An array of type string that contains the file names for each sourceTexts.
- target
- String
The output file name. This argument is required.
- imports
- String[]
An array of type string, with files to reference.
- options
- IDictionary
An IDictionary of compiler options.
Returns
Returns diagnostic messages as an array of type CompilerError. If the array is empty or all elements are warnings, the compilation succeeded.
Exceptions
sourceTexts
is an empty array.
-or-
sourceTextNames
is not the same size as sourceTexts
.
Remarks
Each string in the sourceTexts
parameter is the equivalent of a single source file. There must be at least one sourceTexts
element.
The file names in the sourceTextNames
parameter are used for compiler diagnostics and debug information. The array is required, but it can be locally overridden by use of the #line
directive. The array must have the same number of elements as the sourceTexts
parameter.
The imports
parameter is the same as the /reference
compiler option. This parameter can be null
.
For the options
parameter, the key is the short form of the compiler option. The value is the value desired for the option. The options
parameter can be null
. Some compiler options are not recognized. The following table shows the recognized options and values.
Key Name | Usage |
---|---|
addmodule |
List of modules to include in this assembly. The module names must be separated by the vertical bar or pipe character. Value must be of type String. See -addmodule (C# Compiler Options). |
baseaddress |
Base address for libraries. Value must be of type UInt32. See -baseaddress (C# Compiler Options). |
bugreport |
Produces bug report file. Value must be of type String. See -bugreport (C# Compiler Options). |
checked |
Set default expression evaluation to checked (or unchecked). Value must be of type Boolean. See -checked (C# Compiler Options). |
d |
List of semicolon separated symbols to define. Value must be of type String. See -define (C# Compiler Options). |
debug |
Emit debug information with output. Value must be of type Boolean. Full or pdb-only cannot be specified. See -debug (C# Compiler Options). |
doc |
File name to put XML comments in. Value must be of type String. See -doc (C# Compiler Options). |
filealign |
PE section alignment size. Value must be of type UInt32. See -filealign (C# Compiler Options). |
incr |
Enable incremental rebuild. Value must be of type Boolean. |
lib |
Additional paths to search when locating modules and referenced assemblies. Value must be of type String. See -lib (C# Compiler Options). |
linkres |
Link a managed resource to the assembly. Value must be of type String. See -linkresource (C# Compiler Options). |
m |
Type to search in for the Main method. Value must be of type String. See -main (C# Compiler Options). |
nostdlib |
Do not auto-reference mscorlib.dll. Value must be of type Boolean. See -nostdlib (C# Compiler Options). |
nowarn |
List of semicolon separated warning numbers to not report. Value must be of type String. See -nowarn (C# Compiler Options). |
o |
Enable compiler optimizations. Value must be of type Boolean. See -optimize (C# Compiler Options). |
r |
Referenced assemblies. Value must be of type String. If more than one assembly is specified, the file name must be separated by the vertical bar or pipe character. See -reference (C# Compiler Options). |
res |
Embed a managed resource. Value must be of type String. See -resource (C# Compiler Options). |
target |
Output file target type, one of the following: "library", "exe", "winexe", or "module". Value must be of type String. See -target (C# Compiler Options). |
unsafe |
Allow unsafe constructs. Value must be of type Boolean. See -unsafe (C# Compiler Options). |
w |
Warning level (0-4). Value must be of type String. See -warn (C# Compiler Options). |
warnaserror |
Report warning diagnostics as errors. Value must be of type Boolean. See -warnaserror (C# Compiler Options). |
win32icon |
Win32 icon for auto generated Win32 resource. Value must be of type String. See -win32icon (C# Compiler Options). |
win32res |
Win32 resource file. Value must be of type String. See -win32res (C# Compiler Options). |