次の方法で共有


CodeGeneratorOptions クラス

コード ジェネレータで使用するオプションのセットを表します。

この型のすべてのメンバの一覧については、CodeGeneratorOptions メンバ を参照してください。

System.Object
   System.CodeDom.Compiler.CodeGeneratorOptions

Public Class CodeGeneratorOptions
[C#]
public class CodeGeneratorOptions
[C++]
public __gc class CodeGeneratorOptions
[JScript]
public class CodeGeneratorOptions

スレッドセーフ

この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。

解説

CodeGeneratorOptions は、コード生成中に使用するオプションを指定するために、 ICodeGenerator 実装のコード生成メソッドに渡されます。

IndentString プロパティは、各インデント幅に使用する文字列を指定します。 BracingStyle プロパティは、コード ブロックの境界を示す中かっこの配置スタイルを指定します。 ElseOnClosing プロパティは、 if ブロックや try ブロックの終了行に、 elsecatchfinally の各ブロックを中かっこも含めて追加するかどうかを指定します。 BlankLinesBetweenMembers プロパティは、各メンバの間に空行を挿入するかどうかを指定します。

ICodeGenerator 実装は、 Item ディクショナリ インデクサを使用して、データを設定したり渡すことができるカスタム コード生成オプションを提供できます。コード ジェネレータは、このディクショナリを検索して、追加のコード生成オプションを見つけることができます。

使用例

 
' Creates a new CodeGeneratorOptions.
Dim genOptions As New CodeGeneratorOptions()

' Sets a value indicating that the code generator should insert blank lines between type members.
genOptions.BlankLinesBetweenMembers = True

' Sets the style of bracing format to use: either "Block" to start a
' bracing block on the same line as the declaration of its container, or 
' "C" to start the bracing for the block on the following line.
genOptions.BracingStyle = "C"

' Sets a value indicating that the code generator should not append an else, 
' catch or finally block, including brackets, at the closing line of a preceeding if or try block.
genOptions.ElseOnClosing = False

' Sets the string to indent each line with.
genOptions.IndentString = "    "

' Uses the CodeGeneratorOptions indexer property to set an
' example object to the type's string-keyed ListDictionary.
' Custom ICodeGenerator implementations can use objects 
' in this dictionary to customize process behavior.
genOptions("CustomGeneratorOptionStringExampleID") = "BuildFlags: /A /B /C /D /E"

[C#] 
// Creates a new CodeGeneratorOptions.
CodeGeneratorOptions genOptions = new CodeGeneratorOptions();

// Sets a value indicating that the code generator should insert blank lines between type members.
genOptions.BlankLinesBetweenMembers = true;

// Sets the style of bracing format to use: either "Block" to start a
// bracing block on the same line as the declaration of its container, or 
// "C" to start the bracing for the block on the following line.
genOptions.BracingStyle = "C";

// Sets a value indicating that the code generator should not append an else, 
// catch or finally block, including brackets, at the closing line of a preceeding if or try block.
genOptions.ElseOnClosing = false;

// Sets the string to indent each line with.
genOptions.IndentString = "    ";

// Uses the CodeGeneratorOptions indexer property to set an
// example object to the type's string-keyed ListDictionary.
// Custom ICodeGenerator implementations can use objects 
// in this dictionary to customize process behavior.
genOptions["CustomGeneratorOptionStringExampleID"] = "BuildFlags: /A /B /C /D /E";            

[C++] 
// Creates a new CodeGeneratorOptions.
CodeGeneratorOptions* genOptions = new CodeGeneratorOptions();

// Sets a value indicating that the code generator should insert blank lines between type members.
genOptions->BlankLinesBetweenMembers = true;

// Sets the style of bracing format to use: either S"Block" to start a
// bracing block on the same line as the declaration of its container, or
// S"C" to start the bracing for the block on the following line.
genOptions->BracingStyle = S"C";

// Sets a value indicating that the code generator should not append an else,
// catch or finally block, including brackets, at the closing line of a preceeding if or try block.
genOptions->ElseOnClosing = false;

// Sets the String* to indent each line with.
genOptions->IndentString = S"    ";

// Uses the CodeGeneratorOptions indexer property to set an
// example Object* to the type's String*-keyed ListDictionary.
// Custom ICodeGenerator* implementations can use objects
// in this dictionary to customize process behavior.
genOptions->Item[S"CustomGeneratorOptionStringExampleID"] = S"BuildFlags: /A /B /C /D /E";

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

名前空間: System.CodeDom.Compiler

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

アセンブリ: System (System.dll 内)

参照

CodeGeneratorOptions メンバ | System.CodeDom.Compiler 名前空間