0

アプリから移動するときに診断ログを一時的に保存するコレクションを保存しようとしています - 他のサンプルコードを見てきましたが、以下で行ったようにかなり基本的なようです:

保存:

PhoneApplicationService.Current.State["DiagnosticLog"] = DiagnosticLog;

読み込み中:

if (PhoneApplicationService.Current.State.ContainsKey("DiagnosticLog"))
  DiagnosticLog = (ObservableCollection<DiagnosticLogEntry>)
    PhoneApplicationService.Current.State["DiagnosticLog"];

ただし、次のエラーが表示されます。

タイプ 'System.Runtime.Serialization.InvalidDataContractException' の初回例外が System.Runtime.Serialization.dll で発生しました

何か提案はありますか?

4

1 に答える 1

4

通常、これが発生した場合は、Diagnosticクラス(またはそれに含まれるクラスの1つ)にデフォルトのパブリックコンストラクターがないことを意味します。

于 2012-04-19T20:03:25.333 に答える