次バージョンでPowerShellのサポート
手許のコードではこんな感じでアクセスできるようになりました。特別にAssemblyを作る必要はなく、Soma.Core.dllをロードするだけ(FSharp.Core.dllやFSharp.PowerPack.dllがGACにあるなら)。
2WaySQLも使える。Queryの結果はHashtableのIListでかえってきます。
PowerShell
$somaAssemblyPath = "$pwd\ps\Soma.Core.dll" [system.reflection.assembly]::LoadFrom($somaAssemblyPath) $invariant = "System.Data.SqlClient" $connectionString = "Data Source=.;Initial Catalog=tempdb;Integrated Security=True" $dialect = new-object Soma.Core.MsSqlDialect $config = new-object Soma.Core.PlainConfig $invariant, $connectionString, $dialect $db = new-object Soma.Core.PlainDb $config $setup = @" drop table person; create table person ( id int identity primary key, name varchar(100), age int ); insert into person (name, age) values ('aaa', 20); insert into person (name, age) values ('bbb', 30); insert into person (name, age) values ('ccc', 40); "@ $db.Execute($setup) $db.Query("select * from Person where id = /*id*/0", @{id=2}) $db.QueryOnDemand("select * from Person")
次バージョン(0.14.0.0)で正式にサポートする予定です。