.NET 用のオブジェクト データベース (Caché、Objectivity など) に統一された API とツール (インポート/エクスポートなど) を提供するプロジェクトを検討しています。
それは以下を提供します:
- CLR クラスからのスキーマ生成、
- 指定された OODBM スキーマからの C# クラスの生成、
- オブジェクトを削除、作成、更新するための API
- Linq プロバイダー、
- .NET オブジェクトを使用して .NET からデータベース オブジェクトのメソッドを呼び出すための API (*)、
- 一部の OODBM は何らかの SQL サポートを提供するため、このための API
- 最初のフェーズでは、Caché と Objectivity のプロバイダー。
上記のいずれかを実装するプロジェクトは存在しますか? これはNHibernateの方言で達成できますか? それとも、OODBM は RDBM とは大きく異なるため、別のフレームワークを作成する価値があるのでしょうか?
EDIT:(*)アプリケーションからDBメソッド(RDBMの世界のストアドプロシージャ)を呼び出すことを意味します。OODBM の世界では、少なくとも私が理解しているように、オブジェクトは C# オブジェクトのようにメソッドを持つ場合があります。私の考えでは、属性 [DbCall] などでメソッドをマークし、本文を空のままにし、.NET から呼び出すと、フレームワークは実際に特定のオブジェクトのデータベース メソッドを呼び出します。
NHibernate は RDBM 用に設計されたので、NHibernate の使用中に利用できない OODBM の使用方法の違い (機能) があるかどうか疑問に思っています。