是否可以配置流畅的nhibernate来基于某些模型类的流畅映射创建db模型,同时在一个项目中手动(sql)创建db表和映射到它们的模型类?
我是nhibernate的新手 .
我开始创建一个模型类,并使用流畅的映射来创建数据库模式 . 然后我想添加一些假设db是手动创建的日志框架 .
我使用NHibernateMappingGenerator生成了模型类和映射类 .
编译并运行我的项目后,日志记录表已从数据库中删除 .
此致,塞巴斯蒂安
此代码将在实例化时为您创建表:
public class NHibernateSessionFactory { private static ISessionFactory _sessionFactory; private static ISessionFactory SessionFactory { get { if (_sessionFactory == null) { InitializeNHibernateSessionFactory(); } return _sessionFactory; } } private static void InitializeNHibernateSessionFactory() { _sessionFactory = Fluently.Configure() .Database(MySQLConfiguration.Standard .ConnectionString(ConfigurationManager.ConnectionStrings["MySQL"].ConnectionString)) .ShowSql()) .Mappings(m => m.FluentMappings .AddFromAssemblyOf<OneOfMyMappedClassesMap>())) .ExposeConfiguration(cfg => new SchemaExport(cfg).Create(true, true)) .BuildSessionFactory(); } }
负责根据映射构建数据库的行是 ExposeConfiguration . 如果在控制台应用程序中使用此代码, ShowSql 选项将打印出所有生成的SQL代码 .
ExposeConfiguration
ShowSql
1 回答
此代码将在实例化时为您创建表:
负责根据映射构建数据库的行是
ExposeConfiguration
. 如果在控制台应用程序中使用此代码,ShowSql
选项将打印出所有生成的SQL代码 .