差分

ナビゲーションに移動 検索に移動

Dapper

707 バイト追加, 2016年2月24日 (水) 01:31
== 概要 ==
Dapperは[[Entity Framework]]や[[Active Record]]のような重量級ORMとは違い、[[SQL]]周りの[[ソースコード]]をまるで[[PHP]]などの[[LL言語]]を使っているかのようにサラサラと書けるという代物であり、[[外部キー]]を頼りに[[リレーション]]を自動解決してくれるなどという重量級[[ORM]]の主要機能といわれるものは一切搭載していない。を使っているかのようにサラサラと書けるという代物である。
Dapperはほぼ生の[[SQL]]文を投げると、その結果を[[C Sharp|C#]]の[[クラス]]に自動的に格納(マッピング)してくれる。[[.NET]]標準の[[ADO.NET]]だとクエリ結果は1カラム毎にGetValueメソッドを呼びだして値を取得し、さらに値の型は自前で明示的にキャストして解決するというキチガイ級に面倒でバグの原因になりやすい部分をDapperを使うことでほぼ全自動にできる。 なお、Dapperは上記のような単純な結果のマッピングだけを行うものであり、[[LINQ]]を[[SQL]]に変換されたり、[[外部キー]]を頼りに[[リレーション]]を自動解決してくれるなどという重量級[[ORM]]の主要機能といわれるものは一切搭載していない。 公式サイトでは[[SQL Server]]と[[SQL Lite]]で動作確認をしているとのことだが、[[MySQL]]([[MySQL Connector/NET]])でもちょろっと使ってみた限りでは特に問題はない模様である。)や[[PostgreSQL]]([[Npgsql]])でも特に問題はないようである。ADO.NETのドライバがある[[データベース]]はほぼ動くと思われる。
== 使い方 ==
匿名利用者

案内メニュー