gpt4 book ai didi

xml - 有没有办法在应用程序设置中使用字典或 xml?

转载 作者:数据小太阳 更新时间:2023-10-29 02:07:24 24 4
gpt4 key购买 nike

我必须在应用程序设置中存储一个复杂类型。我认为将其存储为 XML 效果最好。

问题是我不知道如何存储 XML。我更喜欢将它存储为托管 XML,而不是仅使用一串必须在每次访问时解析它的原始 XML。我设法将设置的 Type 列设置为 XDocument,但我无法设置它的值。

有没有办法在应用程序设置中使用 XDocument 或 XML?

更新

我找到了一种方法,只需使用 xml 编辑器编辑 .settings 文件即可。

我把它改成了 custom serializable dictionary ,但是当我尝试访问设置属性时出现以下错误(我将其设置为默认值的序列化表示)。

The property 'Setting' could not be created from it's default value.
Error message: There is an error in XML document (1, 41).

任何想法将不胜感激。

最佳答案

我所做的(即使我不太喜欢 - 但有效)是:

我为我的值创建了简单的可序列化类:

<Xml.Serialization.XmlRoot("Rooms")> _
Public Class Rooms : Inherits List(Of Room)
End Class

<Serializable()> _
Public Class Room
Private m_Room As String
Public Property Room() As String
Get
Return m_Room
End Get
Set(ByVal value As String)
m_Room = value
End Set
End Property

Private m_Sections As New List(Of Section)
Public ReadOnly Property Sections() As List(Of Section)
Get
Return m_Sections
End Get
End Property
End Class

<Serializable()> _
Public Class Section
Private m_Section As String
Public Property Section() As String
Get
Return m_Section
End Get
Set(ByVal value As String)
m_Section = value
End Set
End Property
End Class

然后在 .settings 文件中,我将设置类型(使用 xml 编辑器打开的 .setting 文件)编辑为房间的全名(即 MyProject.Rooms)。然后我给自己做了一个sample反序列化的sample,复制到.settings编辑器的value字段中,让它有一个默认值。它很好用。它确实不是字典,但我仍然可以在 Rooms 类和内部字典中实现(按 Room.Room 返回 Sections。

仍然欢迎任何好的想法,我仍在寻找一种能够在 .settings 文件中使用 IDictinoary 的方法。

此外,我打开了一个connection为此,请善待并投票!

关于xml - 有没有办法在应用程序设置中使用字典或 xml?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2663836/

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