gpt4 book ai didi

c# - XamlReader.Parse 在空字符串上引发异常

转载 作者:行者123 更新时间:2023-11-30 18:44:39 32 4
gpt4 key购买 nike

在我们的应用中,无论对象的类型如何,我们都需要将对象的属性以propertyName、propertyValue、propertyType的形式保存到同一个数据库表中。我们决定使用 XamlWriter 来保存给定对象的所有属性。然后,我们使用 XamlReader 加载创建的 XAML,并将其转回属性值。这在大多数情况下工作正常,除了空字符串。 XamlWriter 将保存一个空字符串,如下所示。

<String xmlns="clr-namespace:System;assembly=mscorlib" xml:space="preserve" /> 

XamlReader 看到这个字符串并尝试创建一个字符串,但在 String 对象中找不到要使用的空构造函数,因此它抛出 ParserException。

我能想到的唯一解决方法是,如果它是一个空字符串,则不实际保存该属性。然后,当我加载属性时,我可以检查哪些属性不存在,这意味着它们将是空字符串。

是否有一些解决方法,或者是否有更好的方法?

最佳答案

我们在尝试序列化字符串时遇到了类似的问题。我们可以解决它的唯一方法是创建一个具有适当构造函数的 StringWrapper 结构或类。然后我们使用这种类型来加载和保存我们的字符串值。

关于c# - XamlReader.Parse 在空字符串上引发异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2502696/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com