「Dapper」の版間の差分
編集の要約なし |
imported>Administrator |
||
| 2行目: | 2行目: | ||
== 概要 == | == 概要 == | ||
Dapperは[[Entity Framework]]や[[Active Record]]のような重量級ORMとは違い、[[SQL]]周りの[[ソースコード]]をまるで[[PHP]]などの[[LL言語]] | Dapperは[[Entity Framework]]や[[Active Record]]のような重量級ORMとは違い、[[SQL]]周りの[[ソースコード]]をまるで[[PHP]]などの[[LL言語]]を使っているかのようにサラサラと書けるという代物である。 | ||
公式サイトでは[[SQL Server]]と[[SQL Lite]]で動作確認をしているとのことだが、[[MySQL]]([[MySQL Connector/NET]] | 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のドライバがある[[データベース]]はほぼ動くと思われる。 | |||
== 使い方 == | == 使い方 == | ||