きよくらの備忘録

「三日坊主と呼ばせない!日記」改め。主にソフトウェア開発関連の話題。

C#

WPF:DataGridにList<Dictionary<string, object>>をbindする

前回ポストの Dapperの結果のDapperRowのコレクションを単純なDictionaryのコレクションに変換する - きよくらの備忘録 に関連して。 List<Dictionary<string, object>>の形のデータをWPFのDataGridにバインドするのに少し手間取ったので備忘録として。 XAMLでDataGridTextColumnを定義</dictionary<string,>…

Dapperの結果のDapperRowのコレクションを単純なDictionaryのコレクションに変換する

DapperのQuery拡張メソッドを型引数ナシまたは型引数dynamicで実行すると、結果はDapper.SqlMapper.DapperRowのコレクションとして取得することになる。このDapperRow型これを単純なDictionary<string, object>のリストとして渡したい事象に遭遇したので、記述したコードをメ</string,>…

DacFxで差分更新スクリプトを取得する際に特定のオブジェクトを除外する

更新用T-SQLスクリプト生成時に特定のオブジェクトを除外したい 先日書いたエントリ、 kiyokura.hateblo.jp ……の補足情報です。 特定のオブジェクトを更新スクリプトに含めたくない場合もあるのではないかと思います。私はあります。 DaxFxのSchemaCompariso…

DacFxを使って(C#で書いたコードを動かして)SQL Serverの差分更新スクリプトを取得する

Visual StudioのアドオンSQL Server Data Tools(以下SSDT)の機能に「スキーマ比較」ツールがあります。 これは大雑把に以下のような機能を持っています。 任意の "SQL Server データベースプロジェクト(以下DBプロジェクト)" / "(オンライン状態の)デ…

DapperのQuery<dynamic>()の結果セットのフィールド名を取得する

ちょっと必要があったのでメモ。 Querydynamic()>が返すdynamicの実体はDapper.SqlMapper.DapperRowのコレクション Query<dynamic()>()が返すdynamicの実体はDapper.SqlMapper.DapperRowのコレクションです。 このDapperRowはDapperのDapper.SqlMapperのprivateな型です</dynamic()>…

byte配列に読み込んだファイルの内容をMemoryStream上でzipファイルにする

.NET Framework 4.5 から、普通のZipファイルの圧縮・展開がとても簡単に扱えるようになりました。 例えばDBのblob(varbinary)列に格納された複数のファイル(のバイナリ)を読み出し、単一のZipファイルにアーカイブしてメモリストリーム上に保持するなら…