Share via


XsdDataContractImporter 构造函数

定义

初始化 XsdDataContractImporter 类的新实例。

重载

XsdDataContractImporter()

初始化 XsdDataContractImporter 类的新实例。

XsdDataContractImporter(CodeCompileUnit)

使用将用于生成 CLR 代码的 XsdDataContractImporter 初始化 CodeCompileUnit 类的新实例。

XsdDataContractImporter()

Source:
XsdDataContractImporter.cs
Source:
XsdDataContractImporter.cs

初始化 XsdDataContractImporter 类的新实例。

public:
 XsdDataContractImporter();
public XsdDataContractImporter ();
Public Sub New ()

适用于

XsdDataContractImporter(CodeCompileUnit)

Source:
XsdDataContractImporter.cs
Source:
XsdDataContractImporter.cs

使用将用于生成 CLR 代码的 XsdDataContractImporter 初始化 CodeCompileUnit 类的新实例。

public:
 XsdDataContractImporter(System::CodeDom::CodeCompileUnit ^ codeCompileUnit);
public XsdDataContractImporter (System.CodeDom.CodeCompileUnit codeCompileUnit);
new System.Runtime.Serialization.XsdDataContractImporter : System.CodeDom.CodeCompileUnit -> System.Runtime.Serialization.XsdDataContractImporter
Public Sub New (codeCompileUnit As CodeCompileUnit)

参数

codeCompileUnit
CodeCompileUnit

将用于存储代码的 CodeCompileUnit

示例

下面的示例创建了一个 XmlSchemaSet,并调用 Import 方法来创建一个 CodeCompileUnit。 然后,使用 CodeCompileUnit 来创建 Visual C# 和 Visual Basic 代码文件。

static void CompileCode(CodeCompileUnit ccu, string sourceName)
{
    CodeDomProvider provider = null;
    FileInfo sourceFile = new FileInfo(sourceName);
    // Select the code provider based on the input file extension, either C# or Visual Basic.
    if (sourceFile.Extension.ToUpper(CultureInfo.InvariantCulture) == ".CS")
    {
        provider = new Microsoft.CSharp.CSharpCodeProvider();
    }
    else if (sourceFile.Extension.ToUpper(CultureInfo.InvariantCulture) == ".VB")
    {
        provider = new Microsoft.VisualBasic.VBCodeProvider();
    }
    else
    {
        Console.WriteLine("Source file must have a .cs or .vb extension");
    }
    if (provider != null)
    {
        CodeGeneratorOptions options = new CodeGeneratorOptions();
        // Set code formatting options to your preference.
        options.BlankLinesBetweenMembers = true;
        options.BracingStyle = "C";

        StreamWriter sw = new StreamWriter(sourceName);
        provider.GenerateCodeFromCompileUnit(ccu, sw, options);
        sw.Close();
    }
}
Shared Sub CompileCode(ByVal ccu As CodeCompileUnit, ByVal sourceName As String) 
    Dim provider As CodeDomProvider = Nothing
    Dim sourceFile As New FileInfo(sourceName)
    ' Select the code provider based on the input file extension, either C# or Visual Basic.
    If sourceFile.Extension.ToUpper(CultureInfo.InvariantCulture) = ".CS" Then
        provider = New Microsoft.CSharp.CSharpCodeProvider()
    ElseIf sourceFile.Extension.ToUpper(CultureInfo.InvariantCulture) = ".VB" Then
        provider = New Microsoft.VisualBasic.VBCodeProvider()
    Else
        Console.WriteLine("Source file must have a .cs or .vb extension")
    End If
    If Not (provider Is Nothing) Then
        Dim options As New CodeGeneratorOptions()
        ' Set code formatting options to your preference. 
        options.BlankLinesBetweenMembers = True
        options.BracingStyle = "C"
        
        Dim sw As New StreamWriter(sourceName)
        provider.GenerateCodeFromCompileUnit(ccu, sw, options)
        sw.Close()
    End If

End Sub

注解

使用此构造函数将更多代码添加到已生成的 CodeCompileUnit 中。

适用于