13

インスタンスを取得して、グラフの内容を表す c# コードを含む文字列にシリアル化できるシリアライザーを探しています。このクラスはSerializeObject、JSON.NET と同様に機能します。

非常に狭い構造のセットしか機能しないことはわかっていますが、私が興味を持っている構造は非常に単純であり、機能します。

同様の機能を備えた Visual Studio Visualizer を誰かが知っていれば、ボーナス ポイントです。

編集: 出力は、コンパイル時に別のアプリケーションで使用されます。実行時に出力 (c# コード) を逆シリアル化する必要はありません。分析のためにファイルに保存されます。

var foo = new Foo() { Number = 1, Bar = new Bar() { Str = "Bar"}};
string sourceCode = Magic.SerializeObject(foo);

出力:

Foo obj = new Foo();
obj.Number = 1;
obj.RefType = null; // infer this
obj.Bar = new Bar();
obj.Bar.Str = "Bar";
4

2 に答える 2

6

はいといいえ...

最も近いソリューションはCodeDOMと呼ばれ、ほとんどの Visual Studio デザイナーとウィザードがコードを生成するために使用するものです。


あなたのコメントを詳しく調べた後、MSDN のBinary Serializationセクションをよく読む必要があると思います。すべての要件を満たします。

あなたが探しているのはシリアライゼーションです。2 番目のプロジェクトを毎回再コンパイルする必要はありません。検証と前方/後方互換性が必要なだけです。

于 2013-04-17T11:03:28.337 に答える