XsdDataContractImporter.CodeCompileUnit Property
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.
Gets a CodeCompileUnit used for storing the CLR types generated.
public:
property System::CodeDom::CodeCompileUnit ^ CodeCompileUnit { System::CodeDom::CodeCompileUnit ^ get(); };
public System.CodeDom.CodeCompileUnit CodeCompileUnit { get; }
member this.CodeCompileUnit : System.CodeDom.CodeCompileUnit
Public ReadOnly Property CodeCompileUnit As CodeCompileUnit
Property Value
A CodeCompileUnit used to store the CLR types generated.
Examples
The following example uses creates a CodeCompileUnit. The CodeCompileUnit is then used to create both a Visual C# and Visual Basic code file.
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
Remarks
Call this property after importing schemas using the XsdDataContractImporter to access the CodeCompileUnit in which all the generated code is stored.