Sérialisation XML à partir d'objets de base de données CLR
La sérialisation XML est nécessaire dans deux scénarios :
Appel de services Web à partir d'objets CLR (Common Language Runtime).
Conversion d'un type défini par l'utilisateur (UDT) en XML.
La sérialisation XML réalisée par appel de la classe XmlSerializer
génère normalement un assembly de sérialisation supplémentaire qui est surchargé dans le projet avec l'assembly source. Toutefois, pour des raisons de sécurité, cette surcharge est désactivée dans le CLR. Par conséquent, pour appeler un service web ou effectuer une conversion de l’UDT en XML dans SQL Server, l’assembly doit être créé manuellement à l’aide d’un outil appelé Sgen.exe fourni avec le .NET Framework qui génère les assemblys de sérialisation nécessaires. Lors de l'appel de XmlSerializer
, l'assembly de sérialisation doit être créé manuellement en procédant comme suit :
Exécutez l’outilSgen.exe fourni avec le SDK .NET Framework pour créer l’assembly contenant les sérialiseurs XML pour l’assembly source.
Inscrivez l’assembly généré dans SQL Server à l’aide de l’instruction
CREATE ASSEMBLY
.
Pour plus d’informations sur les erreurs que vous pouvez recevoir lors de la sérialisation XML, consultez l’article Support Microsoft suivant : « Impossible de charger l’assembly de sérialisation généré dynamiquement ».
Pour plus d'informations sur les types de données qui ne sont pas pris en charge par le sérialiseur XML, consultez la rubrique consacrée à la prise en charge de la liaison de schéma XML dans le .NET Framework dans la documentation de ce dernier.
Voir aussi
Accès aux données à partir d'objets de base de données CLR
CREATE ASSEMBLY (Transact-SQL)