.NET Meta数据驱动/动态ORM

时间:2015-07-10 09:41:25

标签: sql .net nhibernate dynamic orm

我们正在为数据库构建一个小型培训计划,并且有一个Web界面来定义它们之间的实体和关系。这遵循一个非常简单的模式,"添加实体","添加字段","添加链接字段" (一对多,多对一,多对多)。

我们的域名结构非常简单:

public class GenericEntity() {
    public string Id {get;set;}
    public IDictionary<string,object> Fields {get;set;}
}

字段也可以表示关系,映射的方式类似于NHibernate关系映射。

我们希望在运行时将这些实体构建并链接在一起,并使用Postgres(尽管理想情况下,提供程序不可知)数据库动态更新模式更新。

我们已经尝试过NHibernate,而几乎满足了我们的需求,但我们只是坚持使用动态映射。

所以问题是,是否存在允许定义完全元数据驱动映射的ORM,然后处理基础SCHEMA更新以及所有标准ORM,将获取的值映射回通用实体类?

或者任何NHibernate专家都可以告诉我们如何实现这一目标?我们已经接近使用mapping by code了,但这仍然依赖于在编译时知道属性的名称。

0 个答案:

没有答案