Serialização XML de objetos de banco de dados CLR
A serialização XML é necessária em dois cenários:
Invocação de serviços da Web de objetos CLR (Common Language Runtime).
Conversão de um UDT (tipo definido pelo usuário) em XML.
A execução de serialização XML invocando a classe XmlSerializer
normalmente gera um assembly de serialização adicional que é sobrecarregado no projeto com o assembly de origem. Entretanto, por questões de segurança, essa sobrecarga é desabilitada no CLR. Portanto, para chamar um serviço Web ou executar a conversão de UDT para XML dentro de SQL Server, o assembly deve ser criado manualmente usando uma ferramenta chamada Sgen.exe fornecida com o .NET Framework que gera os assemblies de serialização necessários. Ao invocar XmlSerializer
, o assembly de serialização precisa ser criado manualmente seguindo estas etapas:
Execute a ferramenta Sgen.exe fornecida com o SDK do .NET Framework para criar o assembly que contém os serializadores XML para o assembly de origem.
Registre o assembly gerado em SQL Server usando a
CREATE ASSEMBLY
instrução .
Para obter informações sobre erros que você pode receber ao executar a serialização XML, consulte o seguinte artigo Suporte da Microsoft: "Não é possível carregar o assembly de serialização gerado dinamicamente".
Para obter informações sobre tipos de dados não suportados pelo XMLSerializer, consulte o suporte a associação de esquemas XML na documentação do .NET Framework.
Consulte Também
Acesso aos dados dos objetos de banco de dados CLR
CREATE ASSEMBLY (Transact-SQL)