SchemaImporterExtension.ImportSchemaType Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Umožňuje manipulovat s vygenerovaným kódem prozkoumáním importovaného schématu a určením typu CLR, na který se mapuje.
Přetížení
ImportSchemaType(XmlSchemaType, XmlSchemaObject, XmlSchemas, XmlSchemaImporter, CodeCompileUnit, CodeNamespace, CodeGenerationOptions, CodeDomProvider) |
Umožňuje manipulovat s vygenerovaným kódem prozkoumáním importovaného schématu a určením typu CLR, na který se mapuje. |
ImportSchemaType(String, String, XmlSchemaObject, XmlSchemas, XmlSchemaImporter, CodeCompileUnit, CodeNamespace, CodeGenerationOptions, CodeDomProvider) |
Umožňuje manipulovat s vygenerovaným kódem prozkoumáním importovaného schématu a určením typu CLR, na který se mapuje. |
Příklady
Následující příklad ukazuje jednoduchou implementaci ImportSchemaType(String, String, XmlSchemaObject, XmlSchemas, XmlSchemaImporter, CodeCompileUnit, CodeNamespace, CodeGenerationOptions, CodeDomProvider) metody. Kód zkontroluje obor názvů a název. Při nalezení správných hodnot se přidá název vlastního sestavení ("Order.dll"), na které se musí odkazovat ve vygenerovaném kódu. Pak přidá nový obor názvů ("Microsoft.Samples"), který se vygeneruje v kódu.
public override string ImportSchemaType(string name, string ns,
XmlSchemaObject context, XmlSchemas schemas,
XmlSchemaImporter importer,
CodeCompileUnit compileUnit, CodeNamespace codeNamespace,
CodeGenerationOptions options, CodeDomProvider codeGenerator)
{
if (name.Equals("Order") && ns.Equals("http://orders/"))
{
compileUnit.ReferencedAssemblies.Add("Order.dll");
codeNamespace.Imports.Add
(new CodeNamespaceImport("Microsoft.Samples"));
return "Order";
}
return null;
}
Public Overrides Function ImportschemaType(ByVal name As String, ByVal ns As String, ByVal context As XmlSchemaObject, ByVal schemas As XmlSchemas, ByVal importer As XmlSchemaImporter, ByVal compileUnit As CodeCompileUnit, ByVal codeNamespace As CodeNamespace, ByVal options As CodeGenerationOptions, ByVal codeGenerator As CodeDomProvider) As String
If name.Equals("Order") AndAlso ns.Equals("http://orders/") Then
compileUnit.ReferencedAssemblies.Add("Order.dll")
codeNamespace.Imports.Add(New CodeNamespaceImport("Microsoft.Samples"))
Return "Order"
End If
Return Nothing
End Function 'ImportschemaType
ImportSchemaType(XmlSchemaType, XmlSchemaObject, XmlSchemas, XmlSchemaImporter, CodeCompileUnit, CodeNamespace, CodeGenerationOptions, CodeDomProvider)
Umožňuje manipulovat s vygenerovaným kódem prozkoumáním importovaného schématu a určením typu CLR, na který se mapuje.
public:
virtual System::String ^ ImportSchemaType(System::Xml::Schema::XmlSchemaType ^ type, System::Xml::Schema::XmlSchemaObject ^ context, System::Xml::Serialization::XmlSchemas ^ schemas, System::Xml::Serialization::XmlSchemaImporter ^ importer, System::CodeDom::CodeCompileUnit ^ compileUnit, System::CodeDom::CodeNamespace ^ mainNamespace, System::Xml::Serialization::CodeGenerationOptions options, System::CodeDom::Compiler::CodeDomProvider ^ codeProvider);
public virtual string ImportSchemaType (System.Xml.Schema.XmlSchemaType type, System.Xml.Schema.XmlSchemaObject context, System.Xml.Serialization.XmlSchemas schemas, System.Xml.Serialization.XmlSchemaImporter importer, System.CodeDom.CodeCompileUnit compileUnit, System.CodeDom.CodeNamespace mainNamespace, System.Xml.Serialization.CodeGenerationOptions options, System.CodeDom.Compiler.CodeDomProvider codeProvider);
abstract member ImportSchemaType : System.Xml.Schema.XmlSchemaType * System.Xml.Schema.XmlSchemaObject * System.Xml.Serialization.XmlSchemas * System.Xml.Serialization.XmlSchemaImporter * System.CodeDom.CodeCompileUnit * System.CodeDom.CodeNamespace * System.Xml.Serialization.CodeGenerationOptions * System.CodeDom.Compiler.CodeDomProvider -> string
override this.ImportSchemaType : System.Xml.Schema.XmlSchemaType * System.Xml.Schema.XmlSchemaObject * System.Xml.Serialization.XmlSchemas * System.Xml.Serialization.XmlSchemaImporter * System.CodeDom.CodeCompileUnit * System.CodeDom.CodeNamespace * System.Xml.Serialization.CodeGenerationOptions * System.CodeDom.Compiler.CodeDomProvider -> string
Public Overridable Function ImportSchemaType (type As XmlSchemaType, context As XmlSchemaObject, schemas As XmlSchemas, importer As XmlSchemaImporter, compileUnit As CodeCompileUnit, mainNamespace As CodeNamespace, options As CodeGenerationOptions, codeProvider As CodeDomProvider) As String
Parametry
- type
- XmlSchemaType
Typ XSD.
- context
- XmlSchemaObject
Informace o schématu, například číslo řádku elementu XML.
- schemas
- XmlSchemas
Kolekce schémat v dokumentu.
- importer
- XmlSchemaImporter
Použitý dovozce.
- compileUnit
- CodeCompileUnit
A CodeCompileUnit , do kterého můžete přidat struktury CodeDOM pro vygenerování alternativního kódu pro XSD.
- mainNamespace
- CodeNamespace
Aktuální obor názvů elementu.
- options
- CodeGenerationOptions
Bitové kombinace hodnot výčtu, které určují možnosti nastavení v kompilátoru kódu.
- codeProvider
- CodeDomProvider
A CodeDomProvider , který se používá ke generování nového kódu.
Návraty
Název typu CLR, na který se tento typ mapuje.
Příklady
Následující příklad ukazuje jednoduchou implementaci ImportSchemaType(String, String, XmlSchemaObject, XmlSchemas, XmlSchemaImporter, CodeCompileUnit, CodeNamespace, CodeGenerationOptions, CodeDomProvider) metody. Kód zkontroluje obor názvů a název. Při nalezení správných hodnot se přidá název vlastního sestavení ("Order.dll"), na které se musí odkazovat ve vygenerovaném kódu. Pak přidá nový obor názvů ("Microsoft.Samples"), který se vygeneruje v kódu.
public override string ImportSchemaType(string name, string ns,
XmlSchemaObject context, XmlSchemas schemas,
XmlSchemaImporter importer,
CodeCompileUnit compileUnit, CodeNamespace codeNamespace,
CodeGenerationOptions options, CodeDomProvider codeGenerator)
{
if (name.Equals("Order") && ns.Equals("http://orders/"))
{
compileUnit.ReferencedAssemblies.Add("Order.dll");
codeNamespace.Imports.Add
(new CodeNamespaceImport("Microsoft.Samples"));
return "Order";
}
return null;
}
Public Overrides Function ImportschemaType(ByVal name As String, ByVal ns As String, ByVal context As XmlSchemaObject, ByVal schemas As XmlSchemas, ByVal importer As XmlSchemaImporter, ByVal compileUnit As CodeCompileUnit, ByVal codeNamespace As CodeNamespace, ByVal options As CodeGenerationOptions, ByVal codeGenerator As CodeDomProvider) As String
If name.Equals("Order") AndAlso ns.Equals("http://orders/") Then
compileUnit.ReferencedAssemblies.Add("Order.dll")
codeNamespace.Imports.Add(New CodeNamespaceImport("Microsoft.Samples"))
Return "Order"
End If
Return Nothing
End Function 'ImportschemaType
Platí pro
ImportSchemaType(String, String, XmlSchemaObject, XmlSchemas, XmlSchemaImporter, CodeCompileUnit, CodeNamespace, CodeGenerationOptions, CodeDomProvider)
Umožňuje manipulovat s vygenerovaným kódem prozkoumáním importovaného schématu a určením typu CLR, na který se mapuje.
public:
virtual System::String ^ ImportSchemaType(System::String ^ name, System::String ^ ns, System::Xml::Schema::XmlSchemaObject ^ context, System::Xml::Serialization::XmlSchemas ^ schemas, System::Xml::Serialization::XmlSchemaImporter ^ importer, System::CodeDom::CodeCompileUnit ^ compileUnit, System::CodeDom::CodeNamespace ^ mainNamespace, System::Xml::Serialization::CodeGenerationOptions options, System::CodeDom::Compiler::CodeDomProvider ^ codeProvider);
public virtual string ImportSchemaType (string name, string ns, System.Xml.Schema.XmlSchemaObject context, System.Xml.Serialization.XmlSchemas schemas, System.Xml.Serialization.XmlSchemaImporter importer, System.CodeDom.CodeCompileUnit compileUnit, System.CodeDom.CodeNamespace mainNamespace, System.Xml.Serialization.CodeGenerationOptions options, System.CodeDom.Compiler.CodeDomProvider codeProvider);
abstract member ImportSchemaType : string * string * System.Xml.Schema.XmlSchemaObject * System.Xml.Serialization.XmlSchemas * System.Xml.Serialization.XmlSchemaImporter * System.CodeDom.CodeCompileUnit * System.CodeDom.CodeNamespace * System.Xml.Serialization.CodeGenerationOptions * System.CodeDom.Compiler.CodeDomProvider -> string
override this.ImportSchemaType : string * string * System.Xml.Schema.XmlSchemaObject * System.Xml.Serialization.XmlSchemas * System.Xml.Serialization.XmlSchemaImporter * System.CodeDom.CodeCompileUnit * System.CodeDom.CodeNamespace * System.Xml.Serialization.CodeGenerationOptions * System.CodeDom.Compiler.CodeDomProvider -> string
Public Overridable Function ImportSchemaType (name As String, ns As String, context As XmlSchemaObject, schemas As XmlSchemas, importer As XmlSchemaImporter, compileUnit As CodeCompileUnit, mainNamespace As CodeNamespace, options As CodeGenerationOptions, codeProvider As CodeDomProvider) As String
Parametry
- name
- String
Název elementu.
- ns
- String
Obor názvů elementu.
- context
- XmlSchemaObject
Informace o schématu, například číslo řádku elementu XML.
- schemas
- XmlSchemas
Kolekce schémat v dokumentu.
- importer
- XmlSchemaImporter
Použitý dovozce.
- compileUnit
- CodeCompileUnit
A CodeCompileUnit , do kterého můžete přidat struktury CodeDOM pro vygenerování alternativního kódu pro XSD.
- mainNamespace
- CodeNamespace
Aktuální obor názvů elementu.
- options
- CodeGenerationOptions
Bitové kombinace hodnot výčtu, které určují možnosti nastavení v kompilátoru kódu.
- codeProvider
- CodeDomProvider
A CodeDomProvider , který se používá ke generování nového kódu.
Návraty
Název typu CLR, na který se tento typ mapuje.
Příklady
Následující příklad ukazuje jednoduchou implementaci ImportSchemaType(String, String, XmlSchemaObject, XmlSchemas, XmlSchemaImporter, CodeCompileUnit, CodeNamespace, CodeGenerationOptions, CodeDomProvider) metody. Kód zkontroluje obor názvů a název. Při nalezení správných hodnot se přidá název vlastního sestavení ("Order.dll"), na které se musí odkazovat ve vygenerovaném kódu. Pak přidá nový obor názvů ("Microsoft.Samples"), který se vygeneruje v kódu.
public override string ImportSchemaType(string name, string ns,
XmlSchemaObject context, XmlSchemas schemas,
XmlSchemaImporter importer,
CodeCompileUnit compileUnit, CodeNamespace codeNamespace,
CodeGenerationOptions options, CodeDomProvider codeGenerator)
{
if (name.Equals("Order") && ns.Equals("http://orders/"))
{
compileUnit.ReferencedAssemblies.Add("Order.dll");
codeNamespace.Imports.Add
(new CodeNamespaceImport("Microsoft.Samples"));
return "Order";
}
return null;
}
Public Overrides Function ImportschemaType(ByVal name As String, ByVal ns As String, ByVal context As XmlSchemaObject, ByVal schemas As XmlSchemas, ByVal importer As XmlSchemaImporter, ByVal compileUnit As CodeCompileUnit, ByVal codeNamespace As CodeNamespace, ByVal options As CodeGenerationOptions, ByVal codeGenerator As CodeDomProvider) As String
If name.Equals("Order") AndAlso ns.Equals("http://orders/") Then
compileUnit.ReferencedAssemblies.Add("Order.dll")
codeNamespace.Imports.Add(New CodeNamespaceImport("Microsoft.Samples"))
Return "Order"
End If
Return Nothing
End Function 'ImportschemaType
Poznámky
Chcete-li řídit generování kódu, musíte použít třídy nalezené System.CodeDom v oboru názvů. Další informace najdete v tématu Použití codeDOM a CodeDOM Quick Reference.
Platí pro
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro