NHibernate不创建表 var cfg=新配置(); Configure(); cfg.AddAssembly(typeof().Assembly); 新SchemaExport(cfg).Execute(false,true,false,false);

NHibernate不创建表 var cfg=新配置(); Configure(); cfg.AddAssembly(typeof().Assembly); 新SchemaExport(cfg).Execute(false,true,false,false);,nhibernate,schemaexport,Nhibernate,Schemaexport,上面的代码应该创建一个名为的数据库表 但这并不是在制造问题。你最可能遇到的问题是: 将SQLite与connection.release\u mode=on\u close一起使用 指定的程序集中没有映射文件 映射文件尚未作为嵌入资源添加到程序集 映射文件未命名为*.hbm.xml 一些表或列名应该被SQL引用(这将引发异常) 您最可能遇到的问题: 将SQLite与connection.release\u mode=on\u close一起使用 指定的程序集中没有映射文件 映射文件尚未作为嵌

上面的代码应该创建一个名为
的数据库表


但这并不是在制造问题。

你最可能遇到的问题是:

  • 将SQLite与connection.release\u mode=on\u close一起使用
  • 指定的程序集中没有映射文件
  • 映射文件尚未作为嵌入资源添加到程序集
  • 映射文件未命名为*.hbm.xml
  • 一些表或列名应该被SQL引用(这将引发异常)

您最可能遇到的问题:

  • 将SQLite与connection.release\u mode=on\u close一起使用
  • 指定的程序集中没有映射文件
  • 映射文件尚未作为嵌入资源添加到程序集
  • 映射文件未命名为*.hbm.xml
  • 一些表或列名应该被SQL引用(这将引发异常)

    • 要执行()的第一个参数必须为true

      var cfg = new Configuration();
      cfg.Configure();
      cfg.AddAssembly(typeof(<ClassName>).Assembly);
      new SchemaExport(cfg).Execute(false, true, false, false);
      

      我不知道为什么,但你已经知道了。

      执行()的第一个参数必须为true

      var cfg = new Configuration();
      cfg.Configure();
      cfg.AddAssembly(typeof(<ClassName>).Assembly);
      new SchemaExport(cfg).Execute(false, true, false, false);
      

      我不知道为什么,但你已经知道了。

      首先,你有没有查看过你的配置?是否包含您期望的类映射?对于初学者,您是否查看了配置?是否包含您期望的类映射?