В качестве одного из моих первых проектов .NET я пытаюсь создать определяемый пользователем тип CLR для использования в SQL Server. В Требованиях для реализации UDT библиотеки MSDN говорится:
UDT должен реализовывать System.Xml.Serialization.IXmlSerializable, или все общедоступные поля и свойства должны относиться к типам, поддерживающим XML-сериализацию, или иметь атрибут XmlIgnore, если требуется переопределение стандартной сериализации.
Какое правило определяет, будут ли мои поля и свойства сериализуемыми в XML (используя стандартную сериализацию XML)? Какие типы требуют пользовательской сериализации XML?
Изменить: В конечном счете, я хочу знать, нужно ли мне реализовывать интерфейс IXmlSerializable
. Похоже, у меня есть выбор: либо реализовать его, либо ограничиться членами класса/структуры, которые SQL Server CLR может обрабатывать автоматически.