CodeDomProvider 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
구현에 대한 CodeDomProvider 기본 클래스를 제공합니다. 이 클래스는 추상입니다.
public ref class CodeDomProvider abstract : System::ComponentModel::Component
public abstract class CodeDomProvider : System.ComponentModel.Component
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class CodeDomProvider : System.ComponentModel.Component
type CodeDomProvider = class
inherit Component
[<System.Runtime.InteropServices.ComVisible(true)>]
type CodeDomProvider = class
inherit Component
Public MustInherit Class CodeDomProvider
Inherits Component
- 상속
- 파생
- 특성
예제
다음 예제 프로그램은 Console 클래스를 사용하여 "헬로 월드"을 인쇄하는 프로그램의 CodeDOM 모델을 기반으로 소스 코드를 생성하고 컴파일할 수 있습니다. Windows Forms 사용자 인터페이스가 제공됩니다. 사용자는 C#, Visual Basic 및 JScript와 같은 여러 선택 항목에서 대상 프로그래밍 언어를 선택할 수 있습니다.
using System;
using System.CodeDom;
using System.CodeDom.Compiler;
using System.Collections;
using System.ComponentModel;
using System.Diagnostics;
using System.Drawing;
using System.IO;
using System.Windows.Forms;
using Microsoft.CSharp;
using Microsoft.VisualBasic;
using Microsoft.JScript;
// This example demonstrates building a Hello World program graph
// using System.CodeDom elements. It calls code generator and
// code compiler methods to build the program using CSharp, VB, or
// JScript. A Windows Forms interface is included. Note: Code
// must be compiled and linked with the Microsoft.JScript assembly.
namespace CodeDOMExample
{
class CodeDomExample
{
// Build a Hello World program graph using
// System.CodeDom types.
public static CodeCompileUnit BuildHelloWorldGraph()
{
// Create a new CodeCompileUnit to contain
// the program graph.
CodeCompileUnit compileUnit = new CodeCompileUnit();
// Declare a new namespace called Samples.
CodeNamespace samples = new CodeNamespace("Samples");
// Add the new namespace to the compile unit.
compileUnit.Namespaces.Add(samples);
// Add the new namespace import for the System namespace.
samples.Imports.Add(new CodeNamespaceImport("System"));
// Declare a new type called Class1.
CodeTypeDeclaration class1 = new CodeTypeDeclaration("Class1");
// Add the new type to the namespace type collection.
samples.Types.Add(class1);
// Declare a new code entry point method.
CodeEntryPointMethod start = new CodeEntryPointMethod();
// Create a type reference for the System.Console class.
CodeTypeReferenceExpression csSystemConsoleType = new CodeTypeReferenceExpression("System.Console");
// Build a Console.WriteLine statement.
CodeMethodInvokeExpression cs1 = new CodeMethodInvokeExpression(
csSystemConsoleType, "WriteLine",
new CodePrimitiveExpression("Hello World!"));
// Add the WriteLine call to the statement collection.
start.Statements.Add(cs1);
// Build another Console.WriteLine statement.
CodeMethodInvokeExpression cs2 = new CodeMethodInvokeExpression(
csSystemConsoleType, "WriteLine",
new CodePrimitiveExpression("Press the Enter key to continue."));
// Add the WriteLine call to the statement collection.
start.Statements.Add(cs2);
// Build a call to System.Console.ReadLine.
CodeMethodInvokeExpression csReadLine = new CodeMethodInvokeExpression(
csSystemConsoleType, "ReadLine");
// Add the ReadLine statement.
start.Statements.Add(csReadLine);
// Add the code entry point method to
// the Members collection of the type.
class1.Members.Add(start);
return compileUnit;
}
public static void GenerateCode(CodeDomProvider provider,
CodeCompileUnit compileunit)
{
// Build the source file name with the appropriate
// language extension.
String sourceFile;
if (provider.FileExtension[0] == '.')
{
sourceFile = "TestGraph" + provider.FileExtension;
}
else
{
sourceFile = "TestGraph." + provider.FileExtension;
}
// Create an IndentedTextWriter, constructed with
// a StreamWriter to the source file.
IndentedTextWriter tw = new IndentedTextWriter(new StreamWriter(sourceFile, false), " ");
// Generate source code using the code generator.
provider.GenerateCodeFromCompileUnit(compileunit, tw, new CodeGeneratorOptions());
// Close the output file.
tw.Close();
}
public static CompilerResults CompileCode(CodeDomProvider provider,
String sourceFile,
String exeFile)
{
// Configure a CompilerParameters that links System.dll
// and produces the specified executable file.
String[] referenceAssemblies = { "System.dll" };
CompilerParameters cp = new CompilerParameters(referenceAssemblies,
exeFile, false);
// Generate an executable rather than a DLL file.
cp.GenerateExecutable = true;
// Invoke compilation.
CompilerResults cr = provider.CompileAssemblyFromFile(cp, sourceFile);
// Return the results of compilation.
return cr;
}
}
public class CodeDomExampleForm : System.Windows.Forms.Form
{
private System.Windows.Forms.Button run_button = new System.Windows.Forms.Button();
private System.Windows.Forms.Button compile_button = new System.Windows.Forms.Button();
private System.Windows.Forms.Button generate_button = new System.Windows.Forms.Button();
private System.Windows.Forms.TextBox textBox1 = new System.Windows.Forms.TextBox();
private System.Windows.Forms.ComboBox comboBox1 = new System.Windows.Forms.ComboBox();
private System.Windows.Forms.Label label1 = new System.Windows.Forms.Label();
private void generate_button_Click(object sender, System.EventArgs e)
{
CodeDomProvider provider = GetCurrentProvider();
CodeDomExample.GenerateCode(provider, CodeDomExample.BuildHelloWorldGraph());
// Build the source file name with the appropriate
// language extension.
String sourceFile;
if (provider.FileExtension[0] == '.')
{
sourceFile = "TestGraph" + provider.FileExtension;
}
else
{
sourceFile = "TestGraph." + provider.FileExtension;
}
// Read in the generated source file and
// display the source text.
StreamReader sr = new StreamReader(sourceFile);
textBox1.Text = sr.ReadToEnd();
sr.Close();
}
private void compile_button_Click(object sender, System.EventArgs e)
{
CodeDomProvider provider = GetCurrentProvider();
// Build the source file name with the appropriate
// language extension.
String sourceFile;
if (provider.FileExtension[0] == '.')
{
sourceFile = "TestGraph" + provider.FileExtension;
}
else
{
sourceFile = "TestGraph." + provider.FileExtension;
}
// Compile the source file into an executable output file.
CompilerResults cr = CodeDomExample.CompileCode(provider,
sourceFile,
"TestGraph.exe");
if (cr.Errors.Count > 0)
{
// Display compilation errors.
textBox1.Text = "Errors encountered while building " +
sourceFile + " into " + cr.PathToAssembly + ": \r\n\n";
foreach (CompilerError ce in cr.Errors)
textBox1.AppendText(ce.ToString() + "\r\n");
run_button.Enabled = false;
}
else
{
textBox1.Text = "Source " + sourceFile + " built into " +
cr.PathToAssembly + " with no errors.";
run_button.Enabled = true;
}
}
private void run_button_Click(object sender,
System.EventArgs e)
{
Process.Start("TestGraph.exe");
}
private CodeDomProvider GetCurrentProvider()
{
CodeDomProvider provider;
switch ((string)this.comboBox1.SelectedItem)
{
case "CSharp":
provider = CodeDomProvider.CreateProvider("CSharp");
break;
case "Visual Basic":
provider = CodeDomProvider.CreateProvider("VisualBasic");
break;
case "JScript":
provider = CodeDomProvider.CreateProvider("JScript");
break;
default:
provider = CodeDomProvider.CreateProvider("CSharp");
break;
}
return provider;
}
public CodeDomExampleForm()
{
this.SuspendLayout();
// Set properties for label1
this.label1.Location = new System.Drawing.Point(395, 20);
this.label1.Size = new Size(180, 22);
this.label1.Text = "Select a programming language:";
// Set properties for comboBox1
this.comboBox1.Location = new System.Drawing.Point(560, 16);
this.comboBox1.Size = new Size(190, 23);
this.comboBox1.Name = "comboBox1";
this.comboBox1.Items.AddRange(new string[] { "CSharp", "Visual Basic", "JScript" });
this.comboBox1.Anchor = System.Windows.Forms.AnchorStyles.Left
| System.Windows.Forms.AnchorStyles.Right
| System.Windows.Forms.AnchorStyles.Top;
this.comboBox1.SelectedIndex = 0;
// Set properties for generate_button.
this.generate_button.Location = new System.Drawing.Point(8, 16);
this.generate_button.Name = "generate_button";
this.generate_button.Size = new System.Drawing.Size(120, 23);
this.generate_button.Text = "Generate Code";
this.generate_button.Click += new System.EventHandler(this.generate_button_Click);
// Set properties for compile_button.
this.compile_button.Location = new System.Drawing.Point(136, 16);
this.compile_button.Name = "compile_button";
this.compile_button.Size = new System.Drawing.Size(120, 23);
this.compile_button.Text = "Compile";
this.compile_button.Click += new System.EventHandler(this.compile_button_Click);
// Set properties for run_button.
this.run_button.Enabled = false;
this.run_button.Location = new System.Drawing.Point(264, 16);
this.run_button.Name = "run_button";
this.run_button.Size = new System.Drawing.Size(120, 23);
this.run_button.Text = "Run";
this.run_button.Click += new System.EventHandler(this.run_button_Click);
// Set properties for textBox1.
this.textBox1.Anchor = (System.Windows.Forms.AnchorStyles.Top
| System.Windows.Forms.AnchorStyles.Bottom
| System.Windows.Forms.AnchorStyles.Left
| System.Windows.Forms.AnchorStyles.Right);
this.textBox1.Location = new System.Drawing.Point(8, 48);
this.textBox1.Multiline = true;
this.textBox1.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
this.textBox1.Name = "textBox1";
this.textBox1.Size = new System.Drawing.Size(744, 280);
this.textBox1.Text = "";
// Set properties for the CodeDomExampleForm.
this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
this.ClientSize = new System.Drawing.Size(768, 340);
this.MinimumSize = new System.Drawing.Size(750, 340);
this.Controls.AddRange(new System.Windows.Forms.Control[] {this.textBox1,
this.run_button, this.compile_button, this.generate_button,
this.comboBox1, this.label1 });
this.Name = "CodeDomExampleForm";
this.Text = "CodeDom Hello World Example";
this.ResumeLayout(false);
}
protected override void Dispose(bool disposing)
{
base.Dispose(disposing);
}
[STAThread]
static void Main()
{
Application.Run(new CodeDomExampleForm());
}
}
}
Imports System.CodeDom
Imports System.CodeDom.Compiler
Imports System.Collections
Imports System.ComponentModel
Imports System.Diagnostics
Imports System.Drawing
Imports System.IO
Imports System.Windows.Forms
Imports Microsoft.CSharp
Imports Microsoft.JScript
' This example demonstrates building a Hello World program graph
' using System.CodeDom elements. It calls code generator and
' code compiler methods to build the program using CSharp, VB, or
' JScript. A Windows Forms interface is included. Note: Code
' must be compiled and linked with the Microsoft.JScript assembly.
Namespace CodeDOMExample
Class CodeDomExample
' Build a Hello World program graph using
' System.CodeDom types.
Public Shared Function BuildHelloWorldGraph() As CodeCompileUnit
' Create a new CodeCompileUnit to contain
' the program graph.
Dim compileUnit As New CodeCompileUnit()
' Declare a new namespace called Samples.
Dim samples As New CodeNamespace("Samples")
' Add the new namespace to the compile unit.
compileUnit.Namespaces.Add(samples)
' Add the new namespace import for the System namespace.
samples.Imports.Add(New CodeNamespaceImport("System"))
' Declare a new type called Class1.
Dim class1 As New CodeTypeDeclaration("Class1")
' Add the new type to the namespace type collection.
samples.Types.Add(class1)
' Declare a new code entry point method.
Dim start As New CodeEntryPointMethod()
' Create a type reference for the System.Console class.
Dim csSystemConsoleType As New CodeTypeReferenceExpression( _
"System.Console")
' Build a Console.WriteLine statement.
Dim cs1 As New CodeMethodInvokeExpression( _
csSystemConsoleType, "WriteLine", _
New CodePrimitiveExpression("Hello World!"))
' Add the WriteLine call to the statement collection.
start.Statements.Add(cs1)
' Build another Console.WriteLine statement.
Dim cs2 As New CodeMethodInvokeExpression( _
csSystemConsoleType, "WriteLine", _
New CodePrimitiveExpression("Press the Enter key to continue."))
' Add the WriteLine call to the statement collection.
start.Statements.Add(cs2)
' Build a call to System.Console.ReadLine.
Dim csReadLine As New CodeMethodInvokeExpression( _
csSystemConsoleType, "ReadLine")
' Add the ReadLine statement.
start.Statements.Add(csReadLine)
' Add the code entry point method to
' the Members collection of the type.
class1.Members.Add(start)
Return compileUnit
End Function
Public Shared Sub GenerateCode(ByVal provider As CodeDomProvider, ByVal compileunit As CodeCompileUnit)
' Build the source file name with the appropriate
' language extension.
Dim sourceFile As String
If provider.FileExtension.StartsWith(".") Then
sourceFile = "TestGraph" + provider.FileExtension
Else
sourceFile = "TestGraph." + provider.FileExtension
End If
' Create an IndentedTextWriter, constructed with
' a StreamWriter to the source file.
Dim tw As New IndentedTextWriter(New StreamWriter(sourceFile, False), " ")
' Generate source code using the code generator.
provider.GenerateCodeFromCompileUnit(compileunit, tw, New CodeGeneratorOptions())
' Close the output file.
tw.Close()
End Sub
Public Shared Function CompileCode(ByVal provider As CodeDomProvider, _
ByVal sourceFile As String, _
ByVal exeFile As String) As CompilerResults
' Configure a CompilerParameters that links System.dll
' and produces the specified executable file.
Dim referenceAssemblies As String() = {"System.dll"}
Dim cp As New CompilerParameters(referenceAssemblies, exeFile, False)
' Generate an executable rather than a DLL file.
cp.GenerateExecutable = True
' Invoke compilation.
Dim cr As CompilerResults = provider.CompileAssemblyFromFile(cp, _
sourceFile)
' Return the results of compilation.
Return cr
End Function
End Class
Public Class CodeDomExampleForm
Inherits System.Windows.Forms.Form
Private run_button As New System.Windows.Forms.Button()
Private compile_button As New System.Windows.Forms.Button()
Private generate_button As New System.Windows.Forms.Button()
Private textBox1 As New System.Windows.Forms.TextBox()
Private comboBox1 As New System.Windows.Forms.ComboBox()
Private label1 As New System.Windows.Forms.Label()
Private Sub generate_button_Click(ByVal sender As Object, ByVal e As System.EventArgs)
Dim provider As CodeDomProvider = GetCurrentProvider()
CodeDomExample.GenerateCode(provider, CodeDomExample.BuildHelloWorldGraph())
' Build the source file name with the appropriate
' language extension.
Dim sourceFile As String
If provider.FileExtension.StartsWith(".") Then
sourceFile = "TestGraph" + provider.FileExtension
Else
sourceFile = "TestGraph." + provider.FileExtension
End If
' Read in the generated source file and
' display the source text.
Dim sr As New StreamReader(sourceFile)
textBox1.Text = sr.ReadToEnd()
sr.Close()
End Sub
Private Sub compile_button_Click(ByVal sender As Object, ByVal e As System.EventArgs)
Dim provider As CodeDomProvider = GetCurrentProvider()
' Build the source file name with the appropriate
' language extension.
Dim sourceFile As String
If provider.FileExtension.StartsWith(".") Then
sourceFile = "TestGraph" + provider.FileExtension
Else
sourceFile = "TestGraph." + provider.FileExtension
End If
Dim cr As CompilerResults = CodeDomExample.CompileCode(provider, _
sourceFile, _
"TestGraph.EXE")
If cr.Errors.Count > 0 Then
' Display compilation errors.
textBox1.Text = "Errors encountered while building " + _
sourceFile + " into " + _
cr.PathToAssembly + ": " + ControlChars.CrLf
Dim ce As System.CodeDom.Compiler.CompilerError
For Each ce In cr.Errors
textBox1.AppendText(ce.ToString() + ControlChars.CrLf)
Next ce
run_button.Enabled = False
Else
textBox1.Text = "Source " + sourceFile + " built into " + _
cr.PathToAssembly + " with no errors."
run_button.Enabled = True
End If
End Sub
Private Sub run_button_Click(ByVal sender As Object, _
ByVal e As System.EventArgs)
Process.Start("TestGraph.EXE")
End Sub
Private Function GetCurrentProvider() As CodeDomProvider
Dim provider As CodeDomProvider
Select Case CStr(Me.comboBox1.SelectedItem)
Case "CSharp"
provider = CodeDomProvider.CreateProvider("CSharp")
Case "Visual Basic"
provider = CodeDomProvider.CreateProvider("VisualBasic")
Case "JScript"
provider = CodeDomProvider.CreateProvider("JScript")
Case Else
provider = CodeDomProvider.CreateProvider("CSharp")
End Select
Return provider
End Function
Public Sub New()
Me.SuspendLayout()
' Set properties for label1.
Me.label1.Location = New System.Drawing.Point(395, 20)
Me.label1.Size = New Size(180, 22)
Me.label1.Text = "Select a programming language:"
' Set properties for comboBox1.
Me.comboBox1.Location = New System.Drawing.Point(560, 16)
Me.comboBox1.Size = New Size(190, 23)
Me.comboBox1.Name = "comboBox1"
Me.comboBox1.Items.AddRange(New String() {"CSharp", "Visual Basic", "JScript"})
Me.comboBox1.Anchor = System.Windows.Forms.AnchorStyles.Left Or System.Windows.Forms.AnchorStyles.Right Or System.Windows.Forms.AnchorStyles.Top
Me.comboBox1.SelectedIndex = 0
' Set properties for generate_button.
Me.generate_button.Location = New System.Drawing.Point(8, 16)
Me.generate_button.Name = "generate_button"
Me.generate_button.Size = New System.Drawing.Size(120, 23)
Me.generate_button.Text = "Generate Code"
AddHandler generate_button.Click, AddressOf Me.generate_button_Click
' Set properties for compile_button.
Me.compile_button.Location = New System.Drawing.Point(136, 16)
Me.compile_button.Name = "compile_button"
Me.compile_button.Size = New System.Drawing.Size(120, 23)
Me.compile_button.Text = "Compile"
AddHandler compile_button.Click, AddressOf Me.compile_button_Click
' Set properties for run_button.
Me.run_button.Enabled = False
Me.run_button.Location = New System.Drawing.Point(264, 16)
Me.run_button.Name = "run_button"
Me.run_button.Size = New System.Drawing.Size(120, 23)
Me.run_button.Text = "Run"
AddHandler run_button.Click, AddressOf Me.run_button_Click
' Set properties for textBox1.
Me.textBox1.Anchor = System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left Or System.Windows.Forms.AnchorStyles.Right
Me.textBox1.Location = New System.Drawing.Point(8, 48)
Me.textBox1.Multiline = True
Me.textBox1.ScrollBars = System.Windows.Forms.ScrollBars.Vertical
Me.textBox1.Name = "textBox1"
Me.textBox1.Size = New System.Drawing.Size(744, 280)
Me.textBox1.Text = ""
' Set properties for the CodeDomExampleForm.
Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
Me.ClientSize = New System.Drawing.Size(768, 340)
Me.MinimumSize = New System.Drawing.Size(750, 340)
Me.Controls.AddRange(New System.Windows.Forms.Control() {Me.textBox1, _
Me.run_button, Me.compile_button, Me.generate_button, _
Me.comboBox1, Me.label1})
Me.Name = "CodeDomExampleForm"
Me.Text = "CodeDom Hello World Example"
Me.ResumeLayout(False)
End Sub
Protected Overloads Sub Dispose(ByVal disposing As Boolean)
MyBase.Dispose(disposing)
End Sub
<STAThread()> _
Shared Sub Main()
Application.Run(New CodeDomExampleForm())
End Sub
End Class
End Namespace
설명
A CodeDomProvider 를 사용하여 코드 생성기 및 코드 컴파일러의 인스턴스를 만들고 검색할 수 있습니다. 코드 생성기를 사용하여 특정 언어로 코드를 생성할 수 있으며 코드 컴파일러를 사용하여 코드를 어셈블리로 컴파일할 수 있습니다.
구현은 CodeDomProvider 일반적으로 코드를 생성하고 단일 프로그래밍 언어에 대한 컴파일을 관리하기 위한 코드 생성 및/또는 코드 컴파일 인터페이스를 제공합니다. 여러 언어는 Windows SDK와 함께 제공되는 CodeDomProvider 구현에서 지원됩니다. 이러한 언어에는 C#, Visual Basic, C++, JScript가 포함됩니다. 개발자 또는 컴파일러 공급업체는 인터페이스 및 인터페이스를 ICodeGenerator 구현하고 ICodeCompiler CodeDOM 지원을 다른 프로그래밍 언어로 확장하는 기능을 제공할 CodeDomProvider 수 있습니다.
컴퓨터 구성 파일(Machine.config)의 system.codedom< 요소는 개발자와 컴파일러 공급업체가 추가 구현에 대한 구성 설정을 추가하는 메커니즘을 제공합니다.>CodeDomProvider
이 클래스는 CodeDomProvider 컴퓨터에서 구현을 검색하고 열거하는 CodeDomProvider 정적 메서드를 제공합니다. 이 메서드는 GetAllCompilerInfo 컴퓨터의 모든 CodeDomProvider 구현에 대한 설정을 반환합니다. 이 메서드는 GetCompilerInfo 프로그래밍 언어 이름을 기반으로 특정 CodeDomProvider 구현에 대한 설정을 반환합니다. 메서드는 CreateProvider 특정 언어에 CodeDomProvider 대한 구현 인스턴스를 반환합니다.
구성 파일의 언어 공급자 설정에 대한 자세한 내용은 컴파일러 및 언어 공급자 설정 스키마를 참조하세요.
메모
이 클래스는 클래스 수준에서 링크 요청 및 상속 요청을 만듭니다. 직접 호출자 또는 파생 클래스에 완전 신뢰 권한이 없는 경우 A SecurityException 가 throw됩니다.
구현자 참고
.NET Framework 1.0 및 1.1에서 코드 공급자는 CodeDomProvider, ICodeGenerator, ICodeParser 및 ICodeCompiler 구현으로 구성됩니다. .NET Framework 2.0부터 CreateGenerator(), CreateParser() 및 CreateCompiler() 메서드는 사용되지 않으며 ICodeGenerator 및 ICodeCompiler 메서드는 CodeDomProvider 클래스에서 직접 사용할 수 있습니다. 기본 메서드를 호출하지 않고 코드 공급자 구현에서 해당 메서드를 재정의해야 합니다.
생성자
| Name | Description |
|---|---|
| CodeDomProvider() |
CodeDomProvider 클래스의 새 인스턴스를 초기화합니다. |
속성
| Name | Description |
|---|---|
| CanRaiseEvents |
구성 요소가 이벤트를 발생시키는지 여부를 나타내는 값을 가져옵니다. (다음에서 상속됨 Component) |
| Container |
를 IContainer 포함하는 값을 가져옵니다 Component. (다음에서 상속됨 Component) |
| DesignMode |
현재 디자인 모드인지 여부를 Component 나타내는 값을 가져옵니다. (다음에서 상속됨 Component) |
| Events |
이 Component에 연결된 이벤트 처리기 목록을 가져옵니다. (다음에서 상속됨 Component) |
| FileExtension |
현재 언어의 소스 코드 파일에 사용할 기본 파일 이름 확장명을 가져옵니다. |
| LanguageOptions |
언어 기능 식별자를 가져옵니다. |
| Site |
ISite를 가져오거나 Component의 값을 설정합니다. (다음에서 상속됨 Component) |
메서드
| Name | Description |
|---|---|
| CompileAssemblyFromDom(CompilerParameters, CodeCompileUnit[]) |
지정된 컴파일러 설정을 사용하여 지정된 개체 배열 System.CodeDom 에 포함된 트리를 기반으로 CodeCompileUnit 어셈블리를 컴파일합니다. |
| CompileAssemblyFromFile(CompilerParameters, String[]) |
지정된 컴파일러 설정을 사용하여 지정된 파일에 포함된 소스 코드에서 어셈블리를 컴파일합니다. |
| CompileAssemblyFromSource(CompilerParameters, String[]) |
지정된 컴파일러 설정을 사용하여 소스 코드를 포함하는 지정된 문자열 배열에서 어셈블리를 컴파일합니다. |
| CreateCompiler() |
사용되지 않음.
사용되지 않음.
파생 클래스에서 재정의되는 경우 새 코드 컴파일러를 만듭니다. |
| CreateEscapedIdentifier(String) |
지정된 값에 대한 이스케이프된 식별자를 만듭니다. |
| CreateGenerator() |
사용되지 않음.
사용되지 않음.
파생 클래스에서 재정의되는 경우 새 코드 생성기를 만듭니다. |
| CreateGenerator(String) |
파생 클래스에서 재정의되는 경우 출력에 지정된 파일 이름을 사용하여 새 코드 생성기를 만듭니다. |
| CreateGenerator(TextWriter) |
파생 클래스에서 재정의되는 경우 지정된 TextWriter 출력을 사용하여 새 코드 생성기를 만듭니다. |
| CreateObjRef(Type) |
원격 개체와 통신하는 데 사용되는 프록시를 생성하는 데 필요한 모든 관련 정보를 포함하는 개체를 만듭니다. (다음에서 상속됨 MarshalByRefObject) |
| CreateParser() |
사용되지 않음.
사용되지 않음.
파생 클래스에서 재정의되는 경우 새 코드 파서가 만들어집니다. |
| CreateProvider(String, IDictionary<String,String>) |
CodeDomProvider 지정된 언어 및 공급자 옵션에 대한 인스턴스를 가져옵니다. |
| CreateProvider(String) |
CodeDomProvider 지정된 언어의 인스턴스를 가져옵니다. |
| CreateValidIdentifier(String) |
지정된 값에 대한 유효한 식별자를 만듭니다. |
| Dispose() |
에서 사용하는 모든 리소스를 Component해제합니다. (다음에서 상속됨 Component) |
| Dispose(Boolean) |
관리되지 않는 리소스를 Component 해제하고 관리되는 리소스를 선택적으로 해제합니다. (다음에서 상속됨 Component) |
| Equals(Object) |
지정한 개체와 현재 개체가 같은지 여부를 확인합니다. (다음에서 상속됨 Object) |
| GenerateCodeFromCompileUnit(CodeCompileUnit, TextWriter, CodeGeneratorOptions) |
지정된 CodeDOM(코드 문서 개체 모델) 컴파일 단위에 대한 코드를 생성하고 지정된 옵션을 사용하여 지정된 텍스트 기록기에 보냅니다. |
| GenerateCodeFromExpression(CodeExpression, TextWriter, CodeGeneratorOptions) |
지정된 CodeDOM(코드 문서 개체 모델) 식에 대한 코드를 생성하고 지정된 옵션을 사용하여 지정된 텍스트 작성기에 보냅니다. |
| GenerateCodeFromMember(CodeTypeMember, TextWriter, CodeGeneratorOptions) |
지정된 CodeDOM(코드 문서 개체 모델) 멤버 선언에 대한 코드를 생성하고 지정된 옵션을 사용하여 지정된 텍스트 기록기에 보냅니다. |
| GenerateCodeFromNamespace(CodeNamespace, TextWriter, CodeGeneratorOptions) |
지정된 CodeDOM(코드 문서 개체 모델) 네임스페이스에 대한 코드를 생성하고 지정된 옵션을 사용하여 지정된 텍스트 기록기에 보냅니다. |
| GenerateCodeFromStatement(CodeStatement, TextWriter, CodeGeneratorOptions) |
지정된 CodeDOM(코드 문서 개체 모델) 문에 대한 코드를 생성하고 지정된 옵션을 사용하여 지정된 텍스트 작성기에 보냅니다. |
| GenerateCodeFromType(CodeTypeDeclaration, TextWriter, CodeGeneratorOptions) |
지정된 CodeDOM(코드 문서 개체 모델) 형식 선언에 대한 코드를 생성하고 지정된 옵션을 사용하여 지정된 텍스트 기록기에 보냅니다. |
| GetAllCompilerInfo() |
이 컴퓨터에 대한 언어 공급자 및 컴파일러 구성 설정을 반환합니다. |
| GetCompilerInfo(String) |
지정된 언어에 대한 언어 공급자 및 컴파일러 구성 설정을 반환합니다. |
| GetConverter(Type) |
지정된 데이터 형식에 대한 a TypeConverter 를 가져옵니다. |
| GetHashCode() |
기본 해시 함수로 작동합니다. (다음에서 상속됨 Object) |
| GetLanguageFromExtension(String) |
컴파일러 구성 섹션에 구성된 CodeDomProvider 대로 지정된 파일 이름 확장명과 연결된 언어 이름을 반환합니다. |
| GetLifetimeService() |
사용되지 않음.
이 인스턴스의 수명 정책을 제어하는 현재 수명 서비스 개체를 검색합니다. (다음에서 상속됨 MarshalByRefObject) |
| GetService(Type) |
또는 해당 서비스에서 제공하는 서비스를 나타내는 개체를 Component 반환합니다 Container. (다음에서 상속됨 Component) |
| GetType() |
현재 인스턴스의 Type 가져옵니다. (다음에서 상속됨 Object) |
| GetTypeOutput(CodeTypeReference) |
지정된 CodeTypeReference으로 표시되는 형식을 가져옵니다. |
| InitializeLifetimeService() |
사용되지 않음.
이 인스턴스의 수명 정책을 제어하는 수명 서비스 개체를 가져옵니다. (다음에서 상속됨 MarshalByRefObject) |
| IsDefinedExtension(String) |
파일 이름 확장명 컴퓨터에 연결된 CodeDomProvider 구현이 구성되어 있는지 여부를 테스트합니다. |
| IsDefinedLanguage(String) |
언어에 컴퓨터에 구성된 구현이 CodeDomProvider 있는지 테스트합니다. |
| IsValidIdentifier(String) |
지정된 값이 현재 언어의 유효한 식별자인지 여부를 나타내는 값을 반환합니다. |
| MemberwiseClone() |
현재 Object단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
| MemberwiseClone(Boolean) |
현재 MarshalByRefObject 개체의 단순 복사본을 만듭니다. (다음에서 상속됨 MarshalByRefObject) |
| Parse(TextReader) |
지정된 텍스트 스트림 CodeCompileUnit에서 읽은 코드를 .로 컴파일합니다. |
| Supports(GeneratorSupport) |
지정된 코드 생성 지원이 제공되는지 여부를 나타내는 값을 반환합니다. |
| ToString() |
String(있는 경우)의 Component이름을 포함하는 값을 반환합니다. 이 메서드는 재정의해서는 안 됩니다. (다음에서 상속됨 Component) |
이벤트
| Name | Description |
|---|---|
| Disposed |
구성 요소가 메서드 호출에 Dispose() 의해 삭제될 때 발생합니다. (다음에서 상속됨 Component) |