web-dev-qa-db-ja.com

C#での式ツリーのシリアル化と逆シリアル化

C#で式をデシリアライズする方法はありますか、式をデータベースに保存し、実行時にそれらをロードしたいと思います。

88

C#での式ツリーのシリアル化と逆シリアル化 で言及されたライブラリの作業を続けました。

プロジェクトは放棄されたように見えます(2008年)が、いくつかの作業を行い、.NET 4.0とSilverlightで動作するようになりました。私は彼らのコードにバグ修正を加え、さらにDALに依存しないようにしました。

http://expressiontree.codeplex.com/

47
T. Webster

他のオプションは、 Expression Tree Serialization code.msdn.comのプロジェクトです。ここで必要なものはもっと多いようです。

UPD:現在 http://archive.msdn.Microsoft.com/exprserialization

14
Rich

GitHub/Nugetには、 MetaLinq と呼ばれるプロジェクトがあります。これは、式の房をより簡単に操作することを目的としています。

通常の式と、可変で完全にシリアル化可能な「EditableExpressions」との間で変換するため、Json、Xml、Binaryなどで使用できます。

また、これを確認してください ブログ投稿 詳細について。

13
Pop Catalin

私の新しいライブラリをご覧ください Serialize.Linq 。 linq式をjson、xml、およびバイナリにシリアル化します。

9
esskar

WCF RIAサービスでは、IQuerayble<T>

WCF RIAサービスパート3 –データの更新

2
Jonathan Parker

完全ではありません。ただし、 Dynamic LINQ サンプルが少し役立つ場合があります。確かに式を文字列にシリアライズできます(ある程度-ジェネリックは少々厄介に見えます)が、組み込みのパーサーはありません。

2
Marc Gravell

式をシリアル化するプロジェクトに取り組んでいました。それは大丈夫で、あなたはそれを使うことができます。 http://www.codeproject.com/Articles/851187/ServicePredicateBuilder-for-creating-Serializable

1
Mohammad Dayyan