NHibernate SchemaExport 和Configure() catch-22

2023-12-11

我想用DDD在一个新项目中,首先对我的类进行建模,然后根据类库生成数据库模式。我的计划是使用 NHibernate hbm2ddl 工具来完成此操作SchemaExport.

问题是我无法得到SchemaExport因为一个奇怪的第 22 条军规问题让我陷入了困境。SchemaExport需要一个Configuration对象本身需要一个有效的 NHibernate 配置文件以及一组数据库映射。

这里的第 22 条陷阱是,当我执行配置()时,它会抱怨"Could not determine the name of the table for entity 'MyEntity'; remove the 'table' attribute or assign a value to it." So the Configure()方法要求表存在,而SchemaExport应该是基于创建它Configuration我无法创建,因为该表不存在。

那么,我到底应该如何创建一个有效的 NHibernateConfiguration包含所需的映射SchemaExport实际做一些有用的事情而不需要Configure()抛出并抱怨它找不到要创建的表SchemaExport?有没有我可以设置的“模式”Configuration对象,这样它就不会检查数据库中是否存在给定的表,或者我还需要做其他事情吗?


可以贴一下你的配置文件吗?

我一直在没有表的情况下使用这种方法,并且能够动态生成模式。我的猜测是您的 .hbm 文件之一可能有问题。尝试将您的架构削减为 1 个表,使其正常工作,然后从那里构建它。作为参考,这里是我用来生成数据库模式的代码:

    var cfg = new Configuration();
    cfg.Configure();
    var schema = new SchemaExport(cfg);
    schema.Create(true, true);

这还将为您将脚本推送到控制台,以便您可以查看针对数据库生成的 SQL。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

NHibernate SchemaExport 和Configure() catch-22 的相关文章

随机推荐

  • R:使 Ryacas 包在 Windows 上运行时遇到问题

    我正在尝试使用该包Ryacas in R 这是发生了什么 gt install packages Ryacas Please select a CRAN mirror for use in this session trying URL h
  • ASP.NET高效聊天应用方法

    我有与 SQL SERVER 2005 2008 连接的 ASP NET 4 Web 应用程序 我想为我的应用程序用户添加 聊天 功能 假设该功能将从头开始构建 最有效的合理方法是什么 Using WCF每 3 秒有一个 Javascrip
  • 手动更改 URL 时 React 路由不起作用 |反应路由器 4

    当通过 React router 的 Link 组件更改 URL 时 我的路由工作正常 但是 如果我尝试在浏览器中手动更改 URL 则会出现 404 错误 下面是routes js文件 import React from react imp
  • 如何在android中的按钮单击事件上删除项目后刷新列表视图?

    我想从Listview中删除一个项目 并在删除项目后刷新Listview 怎么可能 我正在使用 JSON 解析从数据库获取所有项目 并通过单击按钮删除选定的项目 从数据库中删除成功 但 Listview 无法一次刷新 怎么做 我正在使用 J
  • 有没有办法在fabric文件中进行滚动部署?

    给出以下 fabfile from fabric api import env run env user implicit user env hosts host1 explicit user host2 host3 def print u
  • 连接 SSIS 中多行的值

    我有一个文件源 其中数据如下所示 ID BarcodeNumber 1 123456789 1 33 2 987654321 2 44 我想获取数据如下 ID BarcodeNumber 1 12345678933 2 9876543214
  • Javascript 按值将数组传递给函数,保持原始数组不变

    我在这里阅读了许多与 按值 和 按引用 传递有关将数组发送到 JavaScript 函数的答案 然而 我在将数组发送到函数并保持原始数组不变时遇到问题 这个例子说明了这个问题 function myFunction someArray an
  • Django 在本地提供静态文件

    我已经有一段时间没有设置 django 在本地工作了 我用的是版本1 11 让它为静态文件提供服务 我的项目叫做chatsys我已经在这个文件夹中创建了 static 文件夹和 csschatsys static css style css
  • 在后面的 C# 代码中显示“是/否”警报框

    我正在尝试从 C 代码隐藏中显示 是 否 消息框 如果用户单击 是 我想调用 AddRecord 过程 如果用户单击 否 则不执行任何操作 理想情况下 我想使用下面的代码 但来自代码隐藏 OnClientClick return confi
  • NSData 到 Java 字符串

    我最近一直在编写一个与 iPhone 交互的 Web 应用程序 iPhone iphone实际上会以plist的形式向服务器发送信息 所以 类似的事情并不少见
  • 如何在托管库中正确构建回调 URL 的状态令牌?

    我在使用 Google Apps 脚本时遇到问题状态代币从托管库调用时 这意味着一个The state token is invalid or has expired Please try again 如果状态令牌是从子函数创建的 则始终会
  • 错误 1052 (23000):where 子句中的列“course_id”不明确

    我是 MySQL 新手 所以请告诉我我的问题是否缺少信息 我有一个运行良好的查询 select au email sm created sm grade sm max grade from auth user au courseware s
  • iOS - 如何保证 applicationWillTerminate 将被执行

    有没有办法保证applicationWillTerminate方法中的AppDelegate代表会被打吗 像 info plist 文件中的密钥之类的东西 我的目标 我正在一个信标应用程序中工作 这段代码位于本文 我的问题是 即使我在信标旁
  • 如何以编程方式将图片(位图)分配给联系人?

    我有一个位图类型的变量 我想将其作为 CalledID 图片分配给我的联系人列表中的联系人 我该怎么做 您必须为这些创建自己的哑剧类型 下面是一个将布尔值作为我的自定义 MIME 类型保存到联系人的示例 它使用最新的SDK 2 1 重要的
  • 检查有效的 html C#

    C 中是否有一种简单的方法来验证 html 文件 htm 你可以试试这篇文章C 验证 XHTML在 Dot Net Perls 上 如果您不习惯在 C 中执行此操作 那么通常验证 HTML 的最佳方法是使用W3C 验证服务 当然 如果对您的
  • Groovy 脚本获取请求 xml

    我可以使用 Groovy 脚本获取响应 xml 我需要获取请求 XML 因为我需要将 断言脚本 添加到我的soap ui 测试中 我使用以下代码来获取响应 xml def response new XmlHolder messageExch
  • python win32print 不打印

    我需要直接打印一些信息 无需用户确认 并且我正在使用 Python 和win32print模块 我已经读完了全文蒂姆 戈尔登 win32打印页 甚至阅读win32打印文档 很小 我使用的是他自己在那里写的相同示例 但我什么也没打印 如果我进
  • oracle rowid 内部是如何生成的?

    我想知道oracle中的ROWID是增量生成的吗 如果我尝试下面的查询 select min ROWID from table 我是否总是会获得表中第一个插入行的 ROWID 还是最终可能会获得任何随机行的 ROWID 如果有人能阐明这一点
  • 如何有选择地转义 Python 字符串中的百分比 (%)?

    我有以下代码 test have it break selectiveEscape Print percent in sentence and not s test print selectiveEscape 我想得到输出 Print pe
  • NHibernate SchemaExport 和Configure() catch-22

    我想用DDD在一个新项目中 首先对我的类进行建模 然后根据类库生成数据库模式 我的计划是使用 NHibernate hbm2ddl 工具来完成此操作SchemaExport 问题是我无法得到SchemaExport因为一个奇怪的第 22 条