CodeCommentStatement Constructors

Definition

Initializes a new instance of the CodeCommentStatement class.

Overloads

CodeCommentStatement()

Initializes a new instance of the CodeCommentStatement class.

CodeCommentStatement(CodeComment)

Initializes a new instance of the CodeCommentStatement class using the specified comment.

CodeCommentStatement(String)

Initializes a new instance of the CodeCommentStatement class using the specified text as contents.

CodeCommentStatement(String, Boolean)

Initializes a new instance of the CodeCommentStatement class using the specified text and documentation comment flag.

CodeCommentStatement()

Source:
CodeCommentStatement.cs
Source:
CodeCommentStatement.cs
Source:
CodeCommentStatement.cs
Source:
CodeCommentStatement.cs
Source:
CodeCommentStatement.cs

Initializes a new instance of the CodeCommentStatement class.

C#
public CodeCommentStatement();

Applies to

.NET 10 (package-provided) ja muut versiot
Tuote Versiot
.NET 8 (package-provided), 9 (package-provided), 10 (package-provided)
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0 (package-provided)
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

CodeCommentStatement(CodeComment)

Source:
CodeCommentStatement.cs
Source:
CodeCommentStatement.cs
Source:
CodeCommentStatement.cs
Source:
CodeCommentStatement.cs
Source:
CodeCommentStatement.cs

Initializes a new instance of the CodeCommentStatement class using the specified comment.

C#
public CodeCommentStatement(System.CodeDom.CodeComment comment);

Parameters

comment
CodeComment

A CodeComment that indicates the comment.

Applies to

.NET 10 (package-provided) ja muut versiot
Tuote Versiot
.NET 8 (package-provided), 9 (package-provided), 10 (package-provided)
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0 (package-provided)
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

CodeCommentStatement(String)

Source:
CodeCommentStatement.cs
Source:
CodeCommentStatement.cs
Source:
CodeCommentStatement.cs
Source:
CodeCommentStatement.cs
Source:
CodeCommentStatement.cs

Initializes a new instance of the CodeCommentStatement class using the specified text as contents.

C#
public CodeCommentStatement(string text);

Parameters

text
String

The contents of the comment.

Applies to

.NET 10 (package-provided) ja muut versiot
Tuote Versiot
.NET 8 (package-provided), 9 (package-provided), 10 (package-provided)
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0 (package-provided)
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

CodeCommentStatement(String, Boolean)

Source:
CodeCommentStatement.cs
Source:
CodeCommentStatement.cs
Source:
CodeCommentStatement.cs
Source:
CodeCommentStatement.cs
Source:
CodeCommentStatement.cs

Initializes a new instance of the CodeCommentStatement class using the specified text and documentation comment flag.

C#
public CodeCommentStatement(string text, bool docComment);

Parameters

text
String

The contents of the comment.

docComment
Boolean

true if the comment is a documentation comment; otherwise, false.

Examples

The following code example demonstrates the use of the CodeCommentStatement(String, Boolean) constructor to create a comment statement to be used as an XML comment field. This example is part of a larger example that follows.

C#
// Declare a new code entry point method.
CodeEntryPointMethod start = new CodeEntryPointMethod();
start.Comments.Add(new CodeCommentStatement("<summary>", true));
start.Comments.Add(new CodeCommentStatement(
    "Main method for HelloWorld application.", true));
start.Comments.Add(new CodeCommentStatement(
    @"<para>Add a new paragraph to the description.</para>", true));
start.Comments.Add(new CodeCommentStatement("</summary>", true));

The following code example demonstrates the creation of a simple "Hello World" console application and the generation of an XML documentation file for the compiled application.

C#
using System;
using System.CodeDom;
using System.CodeDom.Compiler;
using System.IO;
using System.Text.RegularExpressions;

namespace BasicCodeDomApp
{
    class Program
    {
        static string providerName = "cs";
        static string sourceFileName = "test.cs";
        static void Main(string[] args)
        {
            CodeDomProvider provider = CodeDomProvider.CreateProvider(providerName);

            LogMessage("Building CodeDOM graph...");

            CodeCompileUnit cu = new CodeCompileUnit();

            cu = BuildHelloWorldGraph();

            StreamWriter sourceFile = new StreamWriter(sourceFileName);
            provider.GenerateCodeFromCompileUnit(cu, sourceFile, null);
            sourceFile.Close();

            CompilerParameters opt = new CompilerParameters(new string[]{
                                      "System.dll" });
            opt.GenerateExecutable = true;
            opt.OutputAssembly = "HelloWorld.exe";
            opt.TreatWarningsAsErrors = true;
            opt.IncludeDebugInformation = true;
            opt.GenerateInMemory = true;
            opt.CompilerOptions = "/doc:HelloWorldDoc.xml";

            CompilerResults results;

            LogMessage("Compiling with " + providerName);
            results = provider.CompileAssemblyFromFile(opt, sourceFileName);

            OutputResults(results);
            if (results.NativeCompilerReturnValue != 0)
            {
                LogMessage("");
                LogMessage("Compilation failed.");
            }
            else
            {
                LogMessage("");
                LogMessage("Demo completed successfully.");
            }
            File.Delete(sourceFileName);
        }

        // 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");

            class1.Comments.Add(new CodeCommentStatement("<summary>", true));
            class1.Comments.Add(new CodeCommentStatement(
                "Create a Hello World application.", true));
            class1.Comments.Add(new CodeCommentStatement("</summary>", true));
            class1.Comments.Add(new CodeCommentStatement(
                @"<seealso cref=" + '"' + "Class1.Main" + '"' + "/>", true));

            // Add the new type to the namespace type collection.
            samples.Types.Add(class1);

            // Declare a new code entry point method.
            CodeEntryPointMethod start = new CodeEntryPointMethod();
            start.Comments.Add(new CodeCommentStatement("<summary>", true));
            start.Comments.Add(new CodeCommentStatement(
                "Main method for HelloWorld application.", true));
            start.Comments.Add(new CodeCommentStatement(
                @"<para>Add a new paragraph to the description.</para>", true));
            start.Comments.Add(new CodeCommentStatement("</summary>", true));

            // 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;
        }
        static void LogMessage(string text)
        {
            Console.WriteLine(text);
        }

        static void OutputResults(CompilerResults results)
        {
            LogMessage("NativeCompilerReturnValue=" +
                results.NativeCompilerReturnValue.ToString());
            foreach (string s in results.Output)
            {
                LogMessage(s);
            }
        }
    }
}

Remarks

If the docComment parameter is true, the CodeCommentStatement is a documentation comment and the comment is structured using triple delimiter characters. For example, in C# the comment is "///", in Visual Basic "'''". Documentation comments are used to identify an XML comment field, such as a type or member summary identified by the <summary> element.

Applies to

.NET 10 (package-provided) ja muut versiot
Tuote Versiot
.NET 8 (package-provided), 9 (package-provided), 10 (package-provided)
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0 (package-provided)
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10