Soma

Soma 1.8.0.6 リリース

.NETで使えるO/Rマッパー、Soma 1.8.0.6 をリリースしました(10日ほど前に)。 ODP.NETでメモリリークする可能性があったのを修正しています。 Fix - Dispose DbParameters and those values to prevent memory leak in ODP.NET environment Fix - Consume …

Soma 1.8.0.0 リリース

.NET向けO/Rマッパー Soma 1.8.0.0 をリリースしました。 ダウンロードはこちらからどうぞ。 zipファイル: https://github.com/nakamura-to/Soma/downloads NuGet: http://nuget.org/packages/Soma 動かしてみたいという方はクイックスタートをどうぞ。 クイ…

Soma 1.6.0.0 リリース

F#で作ったO/Rマッパー Soma 1.6.0.0をリリースしました。F#はもちろん、C#やVB.NETもサポートしています。 http://soma.codeplex.com/releases/view/77956 リリースノート New Feature - IConnectionObserverとICommandObserverを追加しました。 Change - S…

Soma 1.5.0.0 の新機能紹介

C#のコードで紹介します。 検索条件パラメータでIDictionary等の利用をサポート これまでは、検索条件パラメータは匿名型のみをサポートしてました。 var empList = db.Query<Employee>( "select * from Employee e where e.DepartmentId = /* DepartmentId */0 and e.</employee>…

Soma 1.5.0.0 リリース

Soma 1.5.0.0をリリースしました。SomaはF#で作ったO/Rマッパーです。(F#はもちろんC#やVB.NETでも使えます)。 ダウンロードはこちら。 http://soma.codeplex.com/releases/view/72054 NuGetを使って簡単にセットアップできます。 クイックスタート(FShar…

Stateモナドでコネクション管理

これは結構使える!かも。open System open System.Transactions open FSharp.Monad.State open Soma.Corelet config = { new MsSqlConfig() with member this.ConnectionString = "Data Source=.;Initial Catalog=Soma.Tutorial;Integrated Security=True" …

Soma 1.4.0.0 リリース

Soma 1.4.0.0をリリースしました。SomaはF#で作ったO/Rマッパーです。(F#はもちろんC#やVB.NETでも使えます)。 ダウンロードはこちら。 http://soma.codeplex.com/releases/view/71193 NuGetを使って簡単にセットアップできます。 クイックスタート(FShar…

Soma 1.3.0.0 リリース

Soma 1.3.0.0をリリースしました。SomaはF#で作ったO/Rマッパーです。(F#はもちろんC#やVB.NETでも使えます)。 ダウンロードはこちら。 http://soma.codeplex.com/releases/view/70125 NuGetを使って簡単にセットアップできます。 クイックスタート(FShar…

Somaの式コメントでオリジナルの関数を使う(C#版)

上の補足。C#でほぼ同じものを書くとこうなります。F#のオプション型を意識していないのが主な違いです。 using System; using System.Collections.Generic; using Soma.Core; namespace ConsoleApplication3 { public class Dialect : MsSqlDialect { publi…

Somaの式コメントでオリジナルの関数を使う

このエントリは、Soma 1.2.0.0を利用する際のTipsです。 はじめに Somaでは、SQLを動的に組み立てるためにSQLコメント(式コメント)内で利用できる関数があらかじめ組み込まれていて、たとえば次のように使えます。 select * from Employee where /*%if not…

Soma 1.2.0.0 リリース

Soma 1.2.0.0をリリースしました。SomaはF#で作ったO/Rマッパーです。(F#はもちろんC#やVB.NETでも使えます)。 ダウンロードはこちら。 http://soma.codeplex.com/releases/view/69733 NuGetを使って簡単セットアップできます。 クイックスタート(FSharp…

Soma 1.1.0.0 リリース

昨日1.0.0.0をリリースしたばかりでなんですが、Soma 1.1.0.0をリリースしました。SomaはF#で作ったO/Rマッパーです。(F#はもちろんC#やVB.NETでも使えます)。ダウンロードはこちら。 http://soma.codeplex.com/releases/view/69471 NuGetを使ったダウンロ…

Soma 1.0.0.0 リリース

F#で作ったO/Rマッパー Soma 1.0.0.0をリリースしました(F#はもちろんC#やVB.NETでも使えます)。ダウンロードはこちら。 http://soma.codeplex.com/releases/view/69439 NuGetを使ったダウンロードもできます。 http://nuget.org/List/Packages/Soma Relea…

Soma 0.18.0.0 リリース

F#で作ったO/Rマッパー Soma 0.18.0.0をリリースしました(F#はもちろんC#やVB.NETでも使えます)。ダウンロードはこちら。 http://soma.codeplex.com/releases/view/68540 NuGetを使ったダウンロードもできます。 http://nuget.org/List/Packages/Soma Rele…

Soma 0.17.0.0 リリース

F#で作ったO/Rマッパー Soma 0.17.0.0をリリースしました(F#はもちろんC#やVB.NETでも使えます)。ダウンロードはこちら(下に書いているようにNuGetでインストールもできます)。 http://soma.codeplex.com/releases/view/68540 Release Notes New Feature…

Soma 0.15.0.0 リリース

F#で作ったO/Rマッパー Soma 0.15.0.0をリリースしました(F#はもちろんC#やVB.NETでも使えます)。ぜひお試しください。 http://soma.codeplex.com/releases/view/67627 Release Notes Change - SQLパラメータを表現するために, コードクォテーションの利用…

IronJSとSomaを使ってJavaScriptからDBアクセスしてみる

JavaScriptからSomaを動かしてみようと思って試行錯誤。呼び出すには呼び出せたけどIronJSドキュメントがまだ少ないしAPIがよくわからないしでとても限定的。もう少しさくっとJSからCLRのオブジェクトが呼び出せるといいなぁ。 F# open System open System.C…

Soma 0.14.0.0 リリース

F#で作ったO/Rマッパー Soma 0.14.0.0をリリースしました(F#はもちろんC#やVB.NETでも使えます)。ぜひお試しください。 http://soma.codeplex.com/releases/view/67247 Release Notes New Feature - PowerShellをサポートしました。 Fix - コード生成のPow…

PowerShellからSomaを使ってDBアクセス

いろいろやってみましたが、アダプタとなるアセンブリを作ってしまうのが一番簡単。次のクラスをSoma.PowerShell.dllというアセンブリに含めます。 Somaを呼び出すC#のクラス using System.Collections; using System.Collections.Generic; using System.Lin…

次バージョンでPowerShellのサポート

手許のコードではこんな感じでアクセスできるようになりました。特別にAssemblyを作る必要はなく、Soma.Core.dllをロードするだけ(FSharp.Core.dllやFSharp.PowerPack.dllがGACにあるなら)。 2WaySQLも使える。Queryの結果はHashtableのIListでかえってき…

Soma 0.13.0.0 リリース

F#で作ったO/Rマッパー Soma 0.13.0.0をリリースしました(F#はもちろんC#やVB.NETでも使えます)。ぜひお試しください。 http://soma.codeplex.com/releases/view/66786 今回のリリースは、Release Candidateの位置づけです。 7月までにはStableな1.0.0.0と…

Soma 0.12.0.0 リリース

F#で作ったO/Rマッパー Soma 0.12.0.0をリリースしました(F#はもちろんC#やVB.NETでも使えます)。ぜひお試しください。 http://soma.codeplex.com/releases/view/66304 Release Notes Change - IDbConfig.Parse メソッドが IDbConfig.Parser プロパティに…

SomaとF#スクリプトを使ったお手軽DBアクセス

Somaは大きなプロジェクトでも使えますし、小さなツール作成の用途にも使えます。 今回は後者をターゲットとして、Somaを使って手軽にDBアクセスを行うサンプルを紹介します。 環境準備 まず環境を整えます。 DBにはSQL Server 2008を使います。tempdbにアク…

Soma 0.11.0.0 リリース

F#で作ったO/Rマッパー Soma 0.11.0.0をリリースしました(F#はもちろんC#やVB.NETでも使えます)。ぜひお試しください。 http://soma.codeplex.com/releases/view/65812 Release Notes New Feature - SQLの解析結果のオブジェクトをキャッシュするようにし…

Soma 0.10.1.0 リリース

F#で作ったO/Rマッパー Soma 0.10.1.0をリリースしました(F#はもちろんC#やVB.NETでも使えます)。ぜひお試しください。 http://soma.codeplex.com/releases/view/65601 Release Notes New Feature - プロパティが大文字小文字を区別しない動的オブジェクト…

Soma 0.9.0.0 の新機能

新機能は大きく言って2つあります。 Microsoft SQL Server Compact 4.0 と SQLite といった軽量RDBMSのサポート 動的オブジェクトへのマッピングのサポート Microsoft SQL Server Compact 4.0 と SQLite のサポート 設定方法やデータ型のマッピングなどはド…

Soma 0.9.0.0 リリース

F#で作ったO/Rマッパー Soma 0.9.0.0をリリースしました(F#はもちろんC#やVB.NETでも使えます)。ぜひお試しください。 http://soma.codeplex.com/releases/view/65484 Release Notes New Feature - Microsoft SQL Server Compact 4.0 をサポートしました. …

Soma 0.8.0.0 をリリースしました。

F#で作ったO/Rマッパー Soma 0.8.0.0 をリリースしました。 http://soma.codeplex.com/releases/view/65079 F#にはもちろん、C#やVB.NETに最適化したAPIもあります。 F#用サンプルコード C#用サンプルコード VB.NET用サンプルコード 前回からの変更点は次の…

Soma 0.7.0.0 のC#サポートについて

Soma 0.7.0.0 で C#(やVB.NET)のサポートを強化しました。このエントリではその点について紹介します。まず、Soma.Core.Dbの全メソッドがオーバーライド可能です。ですので、ちょっとフックしてアプリに共通の機能を入れたりと便利に使えます。 たとえば、…

Soma.Core.DbクラスのQueryOnDemandメソッド

もうひとつ紹介。 QueryOnDemandメソッドは、SQLの実行を遅延し、さらにDbDataReaderを読みながら一件一件結果を返します。大量データを扱うときに便利です。たとえば、Employeeテーブルから全件取得する次のようなコードを見てみます。 var db = new Db(new…