私の目標はBidirectionalGraphを格納することです。
ビッグデータを扱うのでxmlファイルは使えません。残念ながら、プログラムはデータベースなしで動作する必要があります。
したがって、グラフのメモリを効率的にシリアル化する方法が必要です。
.NET シリアライゼーションと GraphML シリアライゼーションを試しました。しかし、どれも機能しませんでした。
.Net を使用すると、BidirectionalGraph- クラスに [Serializable] ステートメントがないため、「暗黙的な参照変換はありません...」というエラーが表示されます。
xmlwriters を使用すると、System.NotSupportedException が発生します: 「Property type MyEdge.Source not supported by the GraphML schema"」
カスタムの頂点クラスとエッジ クラスをシリアル化可能としてマークしました。
エッジクラスIEdge を実装し、2 つの追加の int 属性を持ちます。
VertexClassには、辞書とリストだけでなく、int 属性もあります
。
BidirectionalGraph をシリアル化可能にするか、別の解決策を得るのを手伝ってくれる人がいるかもしれません。
この件についてご協力いただきありがとうございます。