C#

Dapper.SqlBuilderでパラメータ指定するもう少しマシな方法

mrgchr.hatenablog.com 以前の投稿で、Dapper.SqlBuilderにパラメータを渡す際に、 var builder = new SqlBuilder(); var pageTemplate = builder.AddTemplate(pageSql); var countTemplate = builder.AddTemplate(countSql); if (userId.HasValue) { builde…

Dapper.SqlBuilderに機能を追加してみる

Dapper.SqlBuilderはシンプルながら便利なライブラリです。 mrgchr.hatenablog.com 今回は独自機能を追加してみようと思います。

Dapper.SqlBuilderで膨大な数のレコードのページ表示を適応的にする

膨大な数のレコードをページ表示する際に、アプリケーション側にページサイズよりも大きい数のデータを読み込むことは効率的ではありません。 今回はDapper.SqlBuilderを用いてページ表示を効率化させてみます。

DapperのSQLプレースホルダをコーディングミスに強くする方法を考える

(追記アリ) DapperのSQLプレースホルダでコーディングミスをしたので対応策の備忘録です。 文字列でのパラメータ指定が大嫌いなんです DapperやADO.NETはSQL中に"@“から始まる文言を用いることでプレースホルダを表現できます。 例えば下記の例では”@userId"…

Dapperで一対多の関係性をネストされたオブジェクトにマッピングする

Dapperを用いて一対多の関係をマッピングする方法の備忘録です。 例 データベースのテーブル定義は下記の通りです。 CREATE TABLE [dbo].[Users] ( [Id] INT NOT NULL PRIMARY KEY, [Name] NVARCHAR(64) NULL ) CREATE TABLE [dbo].[TodoItems] ( [Id] INT N…