NHibernate ialah alat berciri lengkap yang sangat popular yang boleh digunakan sebagai penyelesaian untuk pemetaan hubungan objek dalam platform .Net Microsoft. Ia adalah salah satu pelabuhan Hibernate. Kita boleh memetakan model domain, yang berorientasikan objek, kepada pangkalan data hubungan, yang tradisional, dengan menggunakan rangka kerja ini. Dalam artikel nhibernate dalam C# ini, kita akan melihat apa itu NHibernate dalam C#, cara bekerja dan membangunkan projek di dalamnya, cara untuk memulakan dan melihat pelaksanaannya, bersama-sama dengan bantuan contoh.
Ciri utama NHibernate ialah pemetaan kelas dalam C# atau platform lain seperti .Net kepada jadual yang terdapat dalam pangkalan data hubungan seperti MySQL. Ini juga bermakna bahawa NHibernate sedang membuat penukaran jenis data CLR kepada SQL. NHibernate juga bertanggungjawab untuk membuat pertanyaan dan mendapatkan semula data, dan tidak perlu menjana arahan SQL kerana NHibernate juga mengendalikannya. Oleh itu, pembangun tidak perlu risau tentang penukaran objek. Aplikasi ini juga kekal mudah alih untuk kebanyakan pangkalan data SQL dengan hampir tiada overhed kepada prestasi.
Anda perlu memasang NHibernate dan mempunyai editor tempat anda akan mengekod. Selanjutnya, anda juga harus mempunyai pangkalan data seperti MySQL yang akan anda gunakan dalam aplikasi anda. Kita boleh menggunakan editor seperti teks Sublime, studio visual, eclipse atau mana-mana editor lain untuk mencipta projek NHibernate. Editor yang paling dicadangkan ialah studio visual. Skrin studio visual kelihatan seperti yang ditunjukkan di bawah –
Anda boleh memuat turun NHibernate DLL dengan menggunakan metodologi berikut –
Setelah anda mendapat fail zip NHibernate, maka anda boleh mengekstraknya dalam folder tertentu dalam direktori tertentu. Kini, anda boleh menambah rujukan DLL NHibernate dengan mudah dalam projek anda dengan hanya merujuk kepada direktori itu.
Membuat projek NHibernate dalam C# agak mudah, anda hanya perlu mempunyai editor kod studio visual yang dipasang pada sistem anda. Ambil perhatian bahawa versi studio visual hendaklah 2008 atau lebih tinggi. Langkah-langkah yang perlu diikuti untuk membuat projek menggunakan NHibernate dalam C# adalah seperti yang ditunjukkan di bawah -
Pertama sekali, kami akan membuat jadual dalam pangkalan data kami, contohnya, Educba_writers. Jadual kami dalam MySQL kelihatan seperti yang ditunjukkan di bawah -
Sekarang, kami akan mencipta projek web baharu bernama EducbaWriterHiber dan akan menetapkannya dalam direktori http://localhost/EducbaWriterHiber. Kami kemudiannya akan menambah rujukan NHibernate.dll. Jika anda menggunakan editor Visual Studio, ia akan menyalin semua kebergantungan dan perpustakaan secara automatik dalam projek. Kemudian anda akan pergi untuk mencipta fail XML untuk pemetaan seperti yang ditunjukkan di bawah –
<?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>
Sekarang, kami akan mencipta fail konfigurasi baharu, hibernate.cfg.xml, atau mendaftar masukan dalam Web. konfigurasi. Selepas itu, anda boleh mencipta fail POCO bernama Educbawriter seperti yang ditunjukkan di bawah –
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" /> } }
Kini, kami akan mencipta kelas utama halaman ASX yang boleh digunakan sebagai kelas tunggal yang mempunyai kelas kilang sesi NHibernate di dalamnya –
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" />
Perkara terakhir ialah menutup sesi –
Anda boleh melihat output anda ditukar seperti yang ditunjukkan di bawah –
NHibernate dalam C# boleh digunakan sebagai rangka kerja percuma sumber terbuka untuk ORM iaitu Pemetaan Hubungan Objek. Ia direka khas untuk rangka kerja .Net dan membantu dalam mencipta lapisan berterusan.
Atas ialah kandungan terperinci nhibernate dalam C#. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!