В нашем приложении нам необходимо сохранить свойства объектов в одной и той же таблице базы данных независимо от типа объекта в форме propertyName, propertyValue, propertyType. Мы решили использовать XamlWriter для сохранения всех свойств данного объекта. Затем мы используем XamlReader для загрузки созданного XAML и возвращаем его обратно в значение для свойства. Это прекрасно работает по большей части, за исключением пустых строк. XamlWriter сохранит пустую строку, как показано ниже.
<String xmlns="clr-namespace:System;assembly=mscorlib" xml:space="preserve" />
XamlReader видит эту строку и пытается создать строку, но не может найти пустой конструктор в объекте String для использования, поэтому он генерирует ParserException.
Единственный обходной путь, о котором я могу подумать, - это на самом деле не сохранять свойство, если оно является пустой строкой. Затем, загружая свойства, я могу проверить, какие из них не существуют, что означает, что они были бы пустыми строками.
Есть ли какое-то решение для этого или есть даже лучший способ сделать это?