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

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

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

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

Выполнение XML-сериализации с помощью вызова класса XmlSerializer обычно создает дополнительную сборку сериализации, перегружаемую в проект, содержащий исходную сборку. Однако в целях безопасности в CLR эта перегрузка отключена. Поэтому для вызова веб-службы или преобразования определяемого пользователем типа в 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.