C# での休止状態

WBOY
リリース: 2024-09-03 15:03:54
オリジナル
431 人が閲覧しました

NHibernate は、Microsoft の .Net プラットフォームでオブジェクト リレーショナル マッピングのソリューションとして使用できる、非常に人気のあるフル機能のツールです。これは Hibernate のポートの 1 つです。このフレームワークを使用すると、オブジェクト指向のドメイン モデルを従来のリレーショナル データベースにマッピングできます。この C# の nhibernate 記事では、C# の NHibernate とは何か、C# でプロジェクトを作業および開発する方法、開始方法とその実装の確認方法を、例の助けを借りながら見ていきます。

C# の nhibernate とは何ですか?

NHibernate の主な機能は、C# または .Net などの別のプラットフォームのクラスを、MySQL などのリレーショナル データベースに存在するテーブルにマッピングすることです。これは、NHibernate が CLR のデータ型を SQL に変換していることも意味します。 NHibernate はデータのクエリと取得も行います。NHibernate がそれも処理するため、SQL コマンドを生成する必要はありません。したがって、開発者はオブジェクトの変換について心配する必要はありません。また、このアプリケーションは、パフォーマンスへのオーバーヘッドがほとんどなく、多くの SQL データベースに対して移植可能です。

C# で nhibernate を動作させるには?

NHibernate をインストールし、コーディングを行うエディターが必要です。さらに、アプリケーションで使用する MySQL などのデータベースも必要です。 Sublime text、visual Studio、Eclipse、またはその他のエディターを利用して、NHibernate プロジェクトを作成できます。最も推奨されるエディタは Visual Studio です。 Visual Studio の画面は以下のようになります –

C# で nhibernate を始める

次の方法を使用して NHibernate DLL をダウンロードできます –

  • Github からソース コードを入手します – NHibernate のソース コードの zip ファイルは、このリンク (https://github.com/nhibernate/nhibernate-core) からダウンロードできます。ページは以下のようになります。[コード] ボタンをクリックして、zip ファイルをダウンロードするオプションを表示する必要があります –

C# での休止状態

  • パッケージ マネージャー NuGet を使用する – NuGet パッケージ マネージャーをお持ちの場合は、管理ソフトウェア パッケージのオプションに移動し、NHibernate のインストールをクリックします。パッケージ マネージャー ウィンドウは次のように表示されます –

C# での休止状態

  • NHibernate の zip ファイルは SourceForge からダウンロードできます。 SourceForge サイトから NHibernate をダウンロードするには、次の Web サイトを確認してください – https://sourceforge.net/projects/nhibernate/。サイトのホームページは以下のようになります –

C# での休止状態

NHibernate の zip ファイルを取得したら、それを特定のディレクトリ内の特定のフォルダに解凍するだけです。これで、そのディレクトリを参照するだけで、NHibernate DLL の参照をプロジェクトに簡単に追加できるようになります。

C# で nhibernate を使用してプロジェクトを開発する

C# で NHibernate のプロジェクトを作成するのは非常に簡単です。必要なのは、システムにインストールされている Visual Studio コード エディターだけです。 Visual Studio のバージョンは 2008 以降である必要があることに注意してください。 C# で NHibernate を使用してプロジェクトを作成するために必要な手順は次のとおりです –

  • ビジュアル スタジオで空のプロジェクトを作成します。これを行うには、Windows の検索スタート ボックスで Visual Studio エディターを検索するか、任意の場所に作成したショートカットのアイコンをクリックして、Visual Studio エディターを開きます。 [ファイル] オプションをクリックし、開いているフォルダーを選択し、プロジェクト用に新しいフォルダーが作成されていることを確認します。ビジュアルウィンドウは以下のようになります –

C# での休止状態

  • NHibernate プロジェクトについて言えば、次の 4 つの主要な部分があるはずです。
  1. アプリケーションのデータを POCO にマッピングするには、休止状態マッピング ファイルが必要です
  2. 休止状態の設定ファイル、hibernating.cfg
  3. 単純な古い CLR オブジェクトである POCO
  4. apx またはメインクラスの MVC のページを表示します。

C# での nhibernate の例

まず、データベースにテーブル (たとえば、Educba_writers) を作成します。 MySQL のテーブルは以下のようになります –

C# での休止状態

ここで、EducbaWriterHiber という名前の新しい Web プロジェクトを作成し、ディレクトリ http://localhost/EducbaWriterHiber に設定します。次に、NHibernate.dll の参照を追加します。 Visual Studio エディターを使用している場合は、プロジェクト内のすべての依存関係とライブラリが自動的にコピーされます。次に、以下に示すようにマッピング用の XML ファイルの作成に進みます –

<?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>
ログイン後にコピー

ここで、新しい設定ファイル hibernate.cfg.xml を作成するか、Web にエントリを登録します。構成。その後、以下に示すように、Educbawriter という名前の POCO ファイルを作成できます –

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" />
}
}
ログイン後にコピー

次に、NHibernate セッション ファクトリ クラスを含むシングルトン クラスとして使用できる ASX ページのメイン クラスを作成します –








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();
}
}
}
ログイン後にコピー

最後にセッションを終了します –

以下に示すように出力が変換されていることがわかります –

C# での休止状態

結論

C# の NHibernate は、オブジェクト リレーショナル マッピングである ORM 用のオープンソースの無料フレームワークとして使用できます。これは .Net フレームワーク用に特別に設計されており、永続的なレイヤーの作成に役立ちます。

以上がC# での休止状態の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート