2
次のクラスをuser.configに保存しようとしていますが、何が間違っているのか分かりません。ディクショナリオブジェクトはクラスのシリアライズを許可していませんか?VB.netシリアル化の問題
<Serializable()>Public Class RunInformation
Public ExecutablePath As String
<NonSerialized()> Public Settings As Dictionary(Of String, String)
<NonSerialized()> Public ProcessId As Integer
<NonSerialized()> Public Handle As IntPtr
<NonSerialized()> Public TabPageHandle As IntPtr
Public Sub New()
ExecutablePath = ""
Settings = New Dictionary(Of String, String)
End Sub
End Class
省:
Private Sub Form1_Closing(sender As Object, e As EventArgs) Handles MyBase.Closing
my.Settings.Setting = New RunInformation()
My.Settings.Save()
End Sub
XMLファイル:
<userSettings>
<BotManager.My.MySettings>
<setting name="Setting" serializeAs="Xml">
<value />
</setting>
</BotManager.My.MySettings>
</userSettings>
代わりに属性
System.Xml.Serialization.XmlIgnore
を使用してください。 – Plutonix私はその設定を以下のように設定しています:http://imgur.com/a/0PRco – chancity
'RunInformation.Settings'は' Dictionary 'ですのでXMLシリアライズ可能ではありません –
Plutonix