NHibernate - 基本 ORM


在本章中,我们将介绍一些基本映射,并且从上一章中您知道我们有数据库表以及 C# 类定义。我们现在需要一个映射来解释如何在 C# 和数据库之间进行转换。

因此,让我们继续添加一个新的 XML 文件,方法是右键单击解决方案资源管理器中的项目,然后选择“添加”→“新项目...”

新建 XML 文件

在名称字段中输入Student.hbm.xml 。我们需要指定一个默认程序集 NHibernateDemoApp指定一个默认命名空间。这只是缩短了我们要在此文件中进行的许多其他类型定义。

以下是 XML 文件中的实现 -

<?xml version = "1.0" encoding = "utf-8" ?> 

<hibernate-mapping xmlns = "urn:nhibernate-mapping-2.2" 
   assembly = "NHibernateDemoApp" namespace = "NHibernateDemoApp">

   <class name = "Student"> 
      <id name = "ID">
        <generator class = "native"/> 
      </id> 
		
      <property name = "LastName"/> 
      <property name = "FirstMidName"/> 
   </class> 
   
</hibernate-mapping>

接下来我们需要定义一个类;这个班级将是我们的学生班级。接下来,我们需要告诉 NHibernate id 的名称,即 ID,我还必须告诉 NHibernate 如何生成 ID,因此我们的生成器将是 native 类型。

本机类型生成器意味着在 SQL Server 这样的数据库中,它将使用标识列,即标识类型。

接下来我们要做的就是给出属性的名称。因此,为 FirstName 和 LastName 添加两个属性。

现在,我们正在从程序集中读取这些映射文件。因此,首选方法是将这些HBM 文件烘焙到程序集中。我们可以通过简单地设置一个属性来做到这一点。

现在,右键单击解决方案资源管理器中的项目并选择“属性”,您将看到“生成操作”字段,其中默认选择“内容”。

构建行动场

从下拉列表中选择嵌入资源。

嵌入式资源

因此,这实际上将该 XML 文件嵌入到NHibernateDemoApp程序集中。