タイトル通り。ついでにEFから呼べるようにもする。まずはNugetで↓をインストール。

そしたら、まず、SQL直接書くやつ。
using MySql.Data.MySqlClient;
public void test()
{
string constr = @"Database=hogedb;Data Source=fugaserver;User Id=root;Password=passpass";
string error = "";
string title = "";
using (MySqlConnection cn = new MySqlConnection(constr))
{
try
{
cn.Open();// 接続
//クエリ発行
MySqlDataAdapter da = new MySqlDataAdapter("select title from hogetables limit 1;", cn);
DataTable dt = new DataTable();
da.Fill(dt);
foreach (DataRow row in dt.Rows)
{
title = row[0].ToString();
}
cn.Close();//クローズ
}
catch (Exception e)
{
error = e.Message;
}
}
}
次はEF。多分↑のインストールとは別に、EFを入れないとダメ。
最初はWeb.Config。まーこれでやる必要はないけど何となく。
<connectionStrings> <add name="RealConnection" connectionString="Database=hogedb;Data Source=fugaserver;User Id=root;Password=passpass" providerName="MySql.Data.MySqlClient" /> </connectionStrings>
テーブル用のPOCO。
[Table("hogetables")]
public class hogetable
{
[Key]
public int id { get; set; }
public string title { get; set; }
}
public class MOGEModels : DbContext
{
public MOGEModels() : base("RealConnection")
{
}
public DbSet<hogetable> hogetables{ get; set; }
public void test()
{
foreach (var tmp in this.hogetables.Where(n => n.id == 10))
{
tmp.title;
}
}
}
とゆーことで、普通に使えますねって当たり前か。。。
正直、RedmineとかのDBをちょっと他から触りたくなっただけです。Rubyでプラグインとか作るのめんどー。

