SchemaImporterExtension.ImportSchemaType Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Permet de manipuler le code généré en examinant le schéma importé et en spécifiant le type CLR auquel il correspond.
Surcharges
ImportSchemaType(XmlSchemaType, XmlSchemaObject, XmlSchemas, XmlSchemaImporter, CodeCompileUnit, CodeNamespace, CodeGenerationOptions, CodeDomProvider) |
Permet de manipuler le code généré en examinant le schéma importé et en spécifiant le type CLR auquel il correspond. |
ImportSchemaType(String, String, XmlSchemaObject, XmlSchemas, XmlSchemaImporter, CodeCompileUnit, CodeNamespace, CodeGenerationOptions, CodeDomProvider) |
Permet de manipuler le code généré en examinant le schéma importé et en spécifiant le type CLR auquel il correspond. |
Exemples
L’exemple ci-dessous montre une implémentation simple de la ImportSchemaType(String, String, XmlSchemaObject, XmlSchemas, XmlSchemaImporter, CodeCompileUnit, CodeNamespace, CodeGenerationOptions, CodeDomProvider) méthode. Le code vérifie l’espace de noms et le nom. Lorsque les valeurs appropriées sont trouvées, il ajoute le nom d’un assembly personnalisé (« Order.dll ») qui doit être référencé dans le code généré. Il ajoute ensuite un nouvel espace de noms (« Microsoft.Samples ») qui est généré dans le code.
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)
Permet de manipuler le code généré en examinant le schéma importé et en spécifiant le type CLR auquel il correspond.
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
Paramètres
- type
- XmlSchemaType
Type XSD.
- context
- XmlSchemaObject
Informations de schéma, telles que le numéro de ligne de l’élément XML.
- schemas
- XmlSchemas
Collection de schémas du document.
- importer
- XmlSchemaImporter
Importateur en cours d’utilisation.
- compileUnit
- CodeCompileUnit
CodeCompileUnit auquel vous pouvez ajouter des structures CodeDOM pour générer un code alternatif pour XSD.
- mainNamespace
- CodeNamespace
Espace de noms actuel de l’élément.
- options
- CodeGenerationOptions
Combinaison de bits des valeurs d’énumération qui spécifient les options de configuration dans le compilateur de code.
- codeProvider
- CodeDomProvider
CodeDomProvider qui est utilisé pour générer le nouveau code.
Retours
Nom du type CLR à qui cela est mappé.
Exemples
L’exemple ci-dessous montre une implémentation simple de la ImportSchemaType(String, String, XmlSchemaObject, XmlSchemas, XmlSchemaImporter, CodeCompileUnit, CodeNamespace, CodeGenerationOptions, CodeDomProvider) méthode. Le code vérifie l’espace de noms et le nom. Lorsque les valeurs appropriées sont trouvées, il ajoute le nom d’un assembly personnalisé (« Order.dll ») qui doit être référencé dans le code généré. Il ajoute ensuite un nouvel espace de noms (« Microsoft.Samples ») qui est généré dans le code.
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
S’applique à
ImportSchemaType(String, String, XmlSchemaObject, XmlSchemas, XmlSchemaImporter, CodeCompileUnit, CodeNamespace, CodeGenerationOptions, CodeDomProvider)
Permet de manipuler le code généré en examinant le schéma importé et en spécifiant le type CLR auquel il correspond.
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
Paramètres
- name
- String
Nom de l'élément.
- ns
- String
Espace de noms de l'élément.
- context
- XmlSchemaObject
Informations de schéma, telles que le numéro de ligne de l’élément XML.
- schemas
- XmlSchemas
Collection de schémas du document.
- importer
- XmlSchemaImporter
Importateur en cours d’utilisation.
- compileUnit
- CodeCompileUnit
CodeCompileUnit auquel vous pouvez ajouter des structures CodeDOM pour générer un code alternatif pour XSD.
- mainNamespace
- CodeNamespace
Espace de noms actuel de l’élément.
- options
- CodeGenerationOptions
Combinaison de bits des valeurs d’énumération qui spécifient les options de configuration dans le compilateur de code.
- codeProvider
- CodeDomProvider
CodeDomProvider qui est utilisé pour générer le nouveau code.
Retours
Nom du type CLR à qui cela est mappé.
Exemples
L’exemple ci-dessous montre une implémentation simple de la ImportSchemaType(String, String, XmlSchemaObject, XmlSchemas, XmlSchemaImporter, CodeCompileUnit, CodeNamespace, CodeGenerationOptions, CodeDomProvider) méthode. Le code vérifie l’espace de noms et le nom. Lorsque les valeurs appropriées sont trouvées, il ajoute le nom d’un assembly personnalisé (« Order.dll ») qui doit être référencé dans le code généré. Il ajoute ensuite un nouvel espace de noms (« Microsoft.Samples ») qui est généré dans le code.
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
Remarques
Pour contrôler la génération du code, vous devez utiliser les classes de l’espace de System.CodeDom noms. Pour plus d’informations, consultez Utilisation desinformations de référence rapides CodeDOM et CodeDOM.
S’applique à
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour