差分

ナビゲーションに移動 検索に移動

TheOne.OrmLite

1,662 バイト追加, 2020年5月15日 (金) 01:38
ページの作成:「TheOne.OrmLiteとは、.NET向けのORMである。 == 概要 == 名称からServiceStack.OrmLiteフォーク品かと思ったが、中身はSQLite.NET…」
[[TheOne.OrmLite]]とは、.NET向けのORMである。

== 概要 ==
名称から[[ServiceStack.OrmLite]]の[[フォーク]]品かと思ったが、中身は[[SQLite.NET]]の独自ORMにそっくりな代物であった。


* https://github.com/masterinspire/TheOne.OrmLite

== 使用例 ==
軽く試した限りでは[[MySQL]]でも問題なく動作した。
<source lang="csharp">
using TheOne.OrmLite.Core;
using TheOne.OrmLite.Core.DataAnnotations;
using TheOne.OrmLite.MySql;

[OrmLiteAlias("test_table")]
class TestTable {
[OrmLitePrimaryKey]
public string code { get; set; }
public string name { get; set; }
}

class Program
{
static void Main(string[] args)
{
// MySQLへの接続情報
string server = "localhost"; // MySQLサーバホスト名
string user = "root"; // MySQLユーザ名
string pass = ""; // MySQLパスワード
string database = "test"; // 接続するデータベース名
string connectionString = string.Format("Server={0};Database={1};Uid={2};Pwd={3}", server, database, user, pass);

var dbFactory = new OrmLiteConnectionFactory(connectionString, MySqlDialect.Provider);
using (var db = dbFactory.Open())
{
// ヘビーORMのような小難しいマッパーはない。
// あるのはCreateTableだけだ。
// テーブル定義は一発で決めろ。
db.CreateTableIfNotExists<TestTable>();

// UPSERTもできるぞ。
db.Save(new TestTable { code = "hokkaido", name = "北海道" });
}
}
}
</source>

案内メニュー