Поделиться через


Сериализация XML из объектов базы данных CLR

XML-сериализация используется в двух случаях:

  • вызов веб-служб из объектов среды CLR;

  • преобразование определяемого пользователем типа данных (UDT) в XML.

Выполнение XML-сериализации с помощью вызова класса XmlSerializer обычно создает дополнительную сборку сериализации, перегружаемую в проект, содержащий исходную сборку. Однако в целях безопасности в CLR эта перегрузка отключена. Поэтому для вызова веб-службы или преобразования UDT в XML внутри SQL Server следует создать сборку вручную с помощью средства Sgen.exe, поставляемого вместе с платформой .NET Framework и создающего нужные сборки сериализации. При вызове класса XmlSerializer следует создать сборку сериализации вручную, проделав следующие шаги.

  1. Запустите средство Sgen.exe, поставляемое в пакете для разработчиков .NET Framework SDK, для создания сборки, содержащей сериализаторы XML для исходной сборки.

  2. Зарегистрируйте созданную сборку в SQL Server с помощью инструкции CREATE ASSEMBLY.

Информацию об ошибках, которые могут возникнуть при выполнении XML-сериализации, см. в следующей статье службы технической поддержки Майкрософт: "Не удается загрузить динамически созданную сборку сериализации".

Информацию о типах данных, не поддерживаемых классом XMLSerializer, см. в разделе «Поддержка привязки схемы XML на платформе .NET Framework» в документации по платформе .NET Framework.