2012-01-15 13 views

答えて

2

オーチャードのコア機能はすべてNHibernateに基づいているため、オーチャード・データベース全体をNHibernateでサポートされていない別のDBMSに移動することは困難です。しかし、Orchardは非常に拡張性があり、独自のモジュールからすべての種類のカスタムデータソースにアクセスするのは簡単です。たとえば、私は現在、グラフデータベース(neo4j)にデータを格納し、WCFサービスを使用してOrchardにアクセスするプロジェクトに取り組んでいます。

アクセスする必要があるデータの種類によって異なりますが、NHibernateを介して基礎となるSQLデータベースを使用する代わりに、動的にデータをロードするカスタムコンテンツパーツを作成する必要があります。これは非ジェネリックなContentPartクラス(一般的なものはNHibernateを使って保存されたレコードを使用します)を継承し、ContentHandlerを使用してカスタムデータソースからデータを取り込むことによって行うことができます。

+0

私はSQLデータベースに依存している既存のモジュールでも問題ありません。私の唯一の懸念は、他のデータソースを利用できる新しいモジュールを作成したいということです。ギャラリーから、データをフェッチするためにSQL以外のものを使うモジュールをお勧めしますか? – Tarfa

1

'ravendb' Mercurial branchに実験的なRavenDBベースのデータレイヤの実装があります。

これは数ヶ月前に構築されたもので、現在のリリースとの互換性についてはわかりませんが、試してみてください。それ以来、DLに大きな変更はありませんでしたので、私はそれがうまくいくはずか、ほんの数回の調整が必要であると思います。

関連する問題