2012-01-15 121 views

回答

2

Orchard的所有核心功能都基于NHibernate,所以很难将整个Orchard数据库移动到NHibernate不支持的另一个DBMS。但是,Orchard具有很强的可扩展性,并且可以很容易地从您自己的模块中访问各种自定义数据源。例如,我目前正在一个项目中工作,我们将数据存储在图形数据库(neo4j)中,并使用WCF服务在Orchard中访问它们。

这取决于你需要访问什么样的数据,但是你可能需要创建一个自定义的内容部分来动态加载数据,而不是通过NHibernate使用底层的SQL数据库。你可以通过继承非通用ContentPart类(通用的使用NHibernate存储的记录)并使用ContentHandler来填充自定义数据源中的数据。

+0

我完全可以使用依赖于SQL数据库的现有模块。我唯一担心的是我想要创建可以挖掘其他数据源的新模块。你能推荐一个来自库的模块,我应该看看它使用SQL以外的其他东西来获取数据吗? – Tarfa 2012-01-18 15:37:05

1

'ravendb' Mercurial branch中有一个基于实验RavenDB的数据层实现。

它是在几个月前构建的,我不确定与当前版本的兼容性,但您可以尝试一下。从那以后,DL没有什么大的变化,所以我认为它应该可以工作,或者只需要几个小小的调整。