如何查询NHibernate的特定类型?

2024-01-03

我使用 Fluent NHibernate 和 DiscrimminateSubClassesOnColumn() 来支持子类化。用于区分子类的列未映射到实体上的实际属性。

如何创建仅返回给定类型实体的查询?

这是我的尝试,其中 propertyName 是我的区分列的名称, value 是类型名称:

return _db.CreateCriteria<T>()
            .Add(Restrictions.Eq(propertyName, value))
            .List<T>();

然而,这给了我错误“无法解析属性:类型:[我的实体类型]”,这是因为实体本身没有该属性。如果我将该属性添加到我的实体并映射它,我会收到另一个错误:“System.IndexOutOfRangeException:此 SqlParameterCollection 的索引 7 与 Count=7 无效。”


将类型传递给泛型参数 T。例如,如果 Cat 和 Dog 扩展抽象类 Animal:

return _db.CreateCriteria<Cat>()
        .List<Cat>();

返回所有猫

    return _db.CreateCriteria<Animal>()
        .List<Animal>();

返回猫和狗。

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

如何查询NHibernate的特定类型? 的相关文章

  • ProtoBuf-net AsReference 需要 Activator.CreateInstance 中的公共构造函数吗?

    在我的两门课程中 看起来像这样 最少 using System using System Collections Generic using System Collections using System ComponentModel us
  • 如何告诉 NHibernate 始终强制引用标识符?

    正如标题 我如何一劳永逸地告诉NHibernate 所有表名和列名都将在它生成的SQL 中引用 您还可以尝试 SchemaMetadataUpdater QuoteTableAndColumns configuration
  • 在 MVC 类上创建主键字段

    我是 MVC 和 C 新手 我只是偶然发现它并发现它很有趣 我遇到了一个不允许我继续的问题 这是我的代码 using System using System Collections Generic using System Linq usi
  • C++ - 模板专业化和部分专业化

    我一直在互联网和 stackoverflow 上寻找具体的答案 但我似乎找不到 我必须创建一个通用类 然后实现特定的功能 我的具体说明是 您需要使用模板表达式参数以及模板类专业化和部分专业化 我有一个模板类 template
  • 隐形打开的弹出窗口

    第二天就解决这个问题 要重现 请创建新的 WPF 应用程序 xaml
  • 将语句插入 SQL Server 数据库

    最近几天我试图找到这个错误 但没有成功 我正在尝试在数据库中插入一个新行 一切都很顺利 没有错误 也没有程序崩溃 My INSERT声明如下 INSERT INTO Polozaj Znesek Uporabnik Cas Kupec Po
  • TestMethod:异步任务 TestSth() 不适用于 .NET 4.0

    我正在尝试使用 NET 4 0 BCL Async 和 MsTest 运行异步测试方法 看来这个设置不能处理 测试方法 异步Task测试Sth 由于测试用例资源管理器中缺少条目 将签名更改为异步后void 我可以运行测试用例 但结果错误 根
  • CMake 警告:无法为目标生成安全的链接器搜索路径

    在为 pcl 项目运行 CMake 时 我收到一条警告消息 Configuring done CMake Warning at CMakeLists txt 12 add executable Cannot generate a safe
  • 我们应该使用 Eval 还是 Databind 事件?

    当使用 Asp Net 并使用 ListView 等控件创建网站时 使用 Eval 命令是一个好习惯吗 还是应该在 databind 事件中填充文字和数据 取决于您是否想在更新事件上写回数据 在这种情况下数据绑定 如果您只想读取该数据 可以
  • 使用 Microsoft Graph 创建用户

    如何使用 Microsoft graph 创建用户 因为我在保存过程中遇到了权限失败的问题 我确实有几个问题 在图中调用创建用户 API 将在哪里创建用户 是在 Azure AD 还是其他地方 我尝试通过传递 json 和必需的标头来调用创
  • C++ 析构函数:何时释放内存?

    如果我删除一个导致其析构函数被调用的对象 那么内存是在析构函数完成函数中的任何操作之前还是之后被释放 仅当最小派生类子对象被销毁后才会释放内存 所以如果你有 class Base class Derived public Base publ
  • 从 ef core 的子集合中删除一些项目

    我有一个父表和子表 其中父表与子表具有一对多关系 我想删除一些子项 并且希望父项的子集合反映该更改 如果我使用删除选定的子项RemoveRange 那么子集合不会更新 如果我使用Remove从子集合中删除子集合然后 显然 它不如使用效率高R
  • 为什么在 .net 中使用 Invoke on Controls? [复制]

    这个问题在这里已经有答案了 可能的重复 为什么 NET不允许跨线程操作 https stackoverflow com questions 2896504 why net does not allow cross thread operat
  • 在 C# 中生成随机值

    如何使用以下命令生成随机 Int64 和 UInt64 值RandomC 中的类 这应该可以解决问题 这是一个扩展方法 因此您可以像调用普通方法一样调用它Next or NextDouble上的方法Random目的 public stati
  • ASP.NET Web API Swagger(Swashbuckle)重复OperationId

    I have a web api controller like below In swagger output I am having the below image And when I want to consume it in my
  • 为什么我的 ITexthandler 不工作?我正在尝试将 XML 解析为 ITextSharp 文档

    我正在使用 Visual Developer 2010 MVC 3 c 我正在尝试将 XML 解析为 iTextSharp 文档 如下所示 ITextHandler textHandler new ITextHandler doc text
  • 使 C# 编译器相信执行将在成员返回后停止

    我认为目前这是不可能的 或者这是否是一个好主意 但这是我刚才正在考虑的事情 我使用 MSTest 对我的 C 项目进行单元测试 在我的一项测试中 我执行以下操作 MyClass instance try instance getValue
  • 获取大于某个数字的元素个数

    我正在尝试解决以下问题 数字被插入到容器中 每次插入数字时 我需要知道容器中有多少元素大于或等于当前插入的数字 我相信这两个操作都可以以对数复杂度完成 我的问题 C 库中有标准容器可以解决这个问题吗 我知道std multiset可以在对数
  • Visual Studio 2015默认附加库

    当我在 VS 2015 中创建一个空项目时 它会自动将这些库放入 附加依赖项 中 kernel32 lib user32 lib gdi32 lib winspool lib comdlg32 lib advapi32 lib shell3
  • 如何获取通过网络驱动器访问的文件的 UNC 路径?

    我正在 VC 中开发一个应用程序 其中网络驱动器用于访问文件 驱动器由用户手动分配 然后在应用程序中选择驱动器 这会导致驱动器并不总是映射到相同的服务器 我该如何获取此类文件的 UNC 路径 这主要是为了识别目的 这是我用来将普通路径转换为

随机推荐

  • Maven:如果配置文件 B 未激活,则仅激活配置文件 A?

    我有两个 Maven 配置文件 profile A 和 profile B 仅当 A 未激活时才应激活 B 所以如果我打电话 mvn install 执行配置文件 B 但不执行配置文件 A 但如果我打电话 mvn install Pprof
  • 错误:安装 mysql2 时出错:错误:无法构建 gem 本机扩展

    我在尝试为 Rails 安装 gem install mysql2 v 0 3 17 时遇到一些问题 当我尝试通过运行 gem install mysql2 v 0 3 17 或 gem install mysql2 v 0 3 17 来安
  • getLoginStatus javascript facebook 在页面重新加载时消失

    我实现了 facebook connect 并且工作正常 该函数在登录后返回我的名字 FB getLoginStatus function response if response response status connected FB
  • .onload 从 Firefox 扩展调用多次

    我正在开发一个 Firefox 扩展并具有以下代码 function initialize For accessing browser window from sidebar code var mainWindow window Query
  • IE 中的事件处理

    我下面包含的代码允许我在用户第一次将鼠标悬停在元素上时执行某些操作 然后删除该事件 它在 W3C 事件模型浏览器中运行良好 但在 IE6 8 中不断抛出错误 我从另一个问题中得到了代码 并相信它可以处理 IE 有人看到我做错了什么吗
  • 如何使用 Tesseract OCR 从图像中读取表格数据?

    有谁知道如何从图像中读取和解析任何表格数据 我正在使用 asp net 应用程序 并且已使用 Tesseract OCR API 成功读取数据 但无法从图像读取表格 请用c 代码给出解决方案 None
  • 在 div 上使用 .FindControl() 失败

    我有一个 html div 元素 其中包含多个 div 其值我想放入数组服务器端 我的 html div 看起来像 div div class box 2 div div class box 1 div div class box 3 di
  • jQuery:如何找到第一个可见的输入/选择/文本区域(不包括按钮)?

    I tried input not input type button input type submit button visible first 但它没有找到任何东西 我的错误是什么 UPD 我在 document load 上执行此操
  • Python循环遍历Excel表格,放入一个df中

    我有一个 Excel 文件foo xlsx约40张sh1 sh2等 每张纸的格式为 area cnt name nparty1 name nparty2 blah 9 5 5 word 3 7 5 在每张表中 我想用以下格式重命名变量nam
  • 比特币地址生成出现Python错误

    我正在尝试用 python 来理解比特币 并尝试创建我自己的虚荣地址生成器 下面是 while 循环的片段 循环运行大约 10 次后 我不断收到错误消息 任何帮助将不胜感激 我搜索了论坛并找到了答案 但它们不起作用 IE 我改变了 inte
  • XP 和 Server 2003 上并发调用时 wmic 失败

    我在用wmic以获得时间 我已将其范围缩小到一 1 行 bat 文件 我从 stackoverflow 学到了有关管道 stdin 和 stdout 以避免挂起的知识 C gt type t bat TYPE NUL wmic os get
  • ASP.Net 3.5/4.0 代码隐藏还是代码文件?

    我读了之前的帖子 代码文件与代码隐藏 https stackoverflow com questions 73022 codefile vs codebehind 但我仍然很困惑应该使用哪个 听起来 CodeFile 是应该使用的较新选项
  • 创建一系列文本剪辑并使用 moviepy 将它们连接成视频

    在 MoviePy 中 有一个 API 可以从文本创建剪辑以及连接剪辑列表 我正在尝试在循环中创建剪辑列表 然后尝试将它们连接起来 问题是每次它都会创建一个 25 秒的视频文件 并且循环中仅包含最后一个文本 这是代码 for text in
  • 如何在没有原型的情况下找到C函数?

    公司政策规定 C 源代码中的每个函数都有一个原型 我继承了一个有自己的 make 系统的项目 所以我cannot在 gcc 或 Visual Studio 上测试它 发现其中一个文件有一些没有原型声明的静态函数 有没有办法 不一定使用编译器
  • 如何在Android上将GPS坐标保存在exif数据中?

    我正在将 GPS 坐标写入 JPEG 图像 并且坐标是正确的 如我的 logcat 输出所示 但它似乎以某种方式被损坏 读取 exif 数据会导致空值 或者对于我的 GPS 512 976698 degrees 512 976698 deg
  • 使用 VBA 从 Outlook 2010 保存 .XLSX 附件

    我们使用 Outlook 2010 并接收带有 Excel 附件的电子邮件 我们手动将附件保存在我们在网络驱动器上的分区文件夹中创建的子文件夹中 我很好奇的是是否有可能 使用代码检查传入的电子邮件以查看它们是否有附件 然后检查附件是否为 X
  • 内存间接寻址 movl - 汇编

    我试图了解内存间接寻址在具有 AT T 语法的汇编语言中到底是如何工作的 movl eax ebx movl eax ebx 这是一个类似的问题 解释了内存间接寻址 https stackoverflow com questions 161
  • 是否可以使 JavaFX 中的 ImageView 响应式?

    我和一些朋友正在进行一个项目 我们尝试用 JavaFX 编写游戏 我们有一个 GridPane 它与内部的 ImageView 一起生长以容纳地图和游戏角色等 游戏角色和敌人将有自己的图像视图 我们可以在网格窗格中移动 所以 我们现在的问题
  • 尝试禁用 JInternalFrame 的拖动

    我已经四处寻找了一段时间 但找不到禁用拖动 JIntenal Frame 的方法 任何帮助将不胜感激 TYIA 罗兰 请记住这是一个小程序 import java awt import java applet import java awt
  • 如何查询NHibernate的特定类型?

    我使用 Fluent NHibernate 和 DiscrimminateSubClassesOnColumn 来支持子类化 用于区分子类的列未映射到实体上的实际属性 如何创建仅返回给定类型实体的查询 这是我的尝试 其中 propertyN