コードでタプルをシリアル化しようとしています:
List<List<Tuple<String, CodeExtractor.StatementNode>>> results = null;
results = extractor.ExtractSourceCode(sourceCode);
FileStream fs = new FileStream(@"C:\Projects\Test\ast.xml", FileMode.Create);
XmlSerializer formatter = new XmlSerializer(
typeof(List<List<Tuple<String, CodeExtractor.StatementNode>>>));
formatter.Serialize(fs, results);
fs.Close();
しかし、それは失敗し、次のような例外をキャッチしました:
System.Tuple`2[System.String,CodeExtractor.StatementNode] は、パラメーターなしのコンストラクターがないため、シリアル化できません。
CodeExtractor.StatementNode
シリアル化できると確信しています。