NHibernate ist ein sehr beliebtes, voll funktionsfähiges Tool, das als Lösung für die objektrelationale Zuordnung in der .Net-Plattform von Microsoft verwendet werden kann. Es ist einer der Häfen von Hibernate. Mithilfe dieses Frameworks können wir das objektorientierte Domänenmodell auf die traditionelle relationale Datenbank abbilden. In diesem Artikel zu „nhibernate in C#“ werden wir uns anhand eines Beispiels ansehen, was NHibernate in C# ist, wie man darin arbeitet und das Projekt entwickelt, wie man anfängt und seine Implementierung sieht.
Das Hauptmerkmal von NHibernate ist die Zuordnung der Klassen in C# oder einer anderen Plattform wie .Net zu den Tabellen, die in relationalen Datenbanken wie MySQL vorhanden sind. Das bedeutet auch, dass NHibernate die Konvertierung des Datentyps von CLR in SQL vornimmt. NHibernate ist auch für das Abfragen und Abrufen der Daten verantwortlich, und es ist nicht erforderlich, die SQL-Befehle zu generieren, da NHibernate dies auch übernimmt. Somit muss sich der Entwickler nicht um die Objektkonvertierung kümmern. Die Anwendung bleibt außerdem für viele SQL-Datenbanken portierbar, ohne dass die Leistung beeinträchtigt wird.
Sie müssen NHibernate installieren und über einen Editor verfügen, in dem Sie programmieren. Darüber hinaus sollten Sie auch über eine Datenbank wie MySQL verfügen, die Sie in Ihrer Anwendung verwenden. Wir können Editoren wie Sublime Text, Visual Studio, Eclipse oder jeden anderen Editor verwenden, um ein NHibernate-Projekt zu erstellen. Der am häufigsten empfohlene Editor ist das Visual Studio. Der Bildschirm des Visual Studios sieht wie unten gezeigt aus –
Sie können die NHibernate-DLL mithilfe der folgenden Methoden herunterladen –
Sobald Sie die ZIP-Datei von NHibernate erhalten haben, können Sie sie einfach in einen bestimmten Ordner im spezifischen Verzeichnis extrahieren. Jetzt können Sie ganz einfach die Referenzen der NHibernate-DLLs in Ihrem Projekt hinzufügen, indem Sie einfach auf dieses Verzeichnis verweisen.
Das Erstellen eines NHibernate-Projekts in C# ist ganz einfach. Sie müssen lediglich den Visual Studio-Code-Editor auf Ihrem System installiert haben. Beachten Sie, dass die Version des Visual Studios 2008 oder höher sein sollte. Die erforderlichen Schritte zum Erstellen eines Projekts mit NHibernate in C# sind unten dargestellt –
Zuerst erstellen wir eine Tabelle in unserer Datenbank, zum Beispiel Educba_writers. Unsere Tabelle in MySQL sieht wie unten gezeigt aus –
Jetzt erstellen wir ein neues Webprojekt mit dem Namen EducbaWriterHiber und legen es im Verzeichnis http://localhost/EducbaWriterHiber ab. Anschließend fügen wir die Referenz von NHibernate.dll hinzu. Wenn Sie den Visual Studio-Editor verwenden, kopiert dieser automatisch alle Abhängigkeiten und Bibliotheken im Projekt. Anschließend erstellen Sie die XML-Datei für die Zuordnung wie unten gezeigt –
<?xml version="1.0" encoding="utf-8" ?> <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" auto-import="true" assembly="EducbaWriterHiber" namespace="EducbaWriterHiber.Models"> <class name="Educba_writers" table="Educba_writers" dynamic-update="true" xmlns="urn:nhibernate-mapping-2.2"> <cache usage="read-write"/> <id name="Id" column="writer_id" type="int"> <generator class="native" /> </id> <property name="f_name" /> <property name="l_name" /> <property name="email_id" /> <property name="mobile_number" /> <property name="join_date" /> <property name="domain_id" /> <property name="pay_amount" /> <property name="guide_id" /> <property name="department_id" /> </class> </hibernate-mapping>
Jetzt erstellen wir eine neue Konfigurationsdatei, hibernate.cfg.xml, oder registrieren den Eintrag im Web. config. Anschließend können Sie die POCO-Datei mit dem Namen Educbawriter wie unten gezeigt erstellen –
using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace EMPNHibernate.Models { public class Employee { public virtual int writer_id { get; set; } public virtual string f_name { get; set; } public virtual string l_name { get; set; } public virtual string email_id { get; set; } public virtual string mobile_number { get; set; } public virtual string join_date { get; set; } public virtual string domain_id { get; set; } public virtual string pay_amount { get; set; } public virtual string guide_id" /> public virtual string department_id" /> } }
Jetzt erstellen wir die Hauptklasse der ASX-Seite, die als Singleton-Klasse mit der NHibernate-Sitzungsfabrikklasse verwendet werden kann –
Create an entry in Web.config using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace EMPNHibernate.Models { public class Employee { public virtual int writer_id { get; set; } public virtual string f_name { get; set; } public virtual string l_name { get; set; } public virtual string email_id { get; set; } public virtual string mobile_number { get; set; } public virtual string join_date { get; set; } public virtual string domain_id { get; set; } public virtual string pay_amount { get; set; } public virtual string guide_id" /> public virtual string department_id" /> } } using System.Web; using NHibernate; using NHibernate.Cfg; namespace EducbaWriterHiber { public class EducbaWriterHiberSession { public static ISession OpenSession() { var sampleConfig = new Configuration(); sampleConfig.Configure(); ISessionFactory sampleSessFactory = sampleConfig.BuildSessionFactory(); return sampleSessFactory.OpenSession(); } } } public virtual string department_id" />
Als Letztes wird die Sitzung geschlossen –
Sie können sehen, wie Ihre Ausgabe wie unten gezeigt konvertiert wird –
NHibernate in C# kann als Open-Source-Framework für ORM, also Object Relational Mapping, verwendet werden. Es wurde speziell für das .Net-Framework entwickelt und hilft bei der Erstellung persistenter Ebenen.
Das obige ist der detaillierte Inhalt vonnhibernate in C#. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!