読者です 読者をやめる 読者になる 読者になる

IT業界のすみっこ暮らし

ふと気がついたときの記録

Entity Framework:SQL文を直接実行

手持ちのSQLクエリーをそのままEFで実行したい場合の使い方のメモ。

SELECT

var testList = new List<TestItem>();
var test = DbContext.Database.SqlQuery<TestItem>("SELECT item_id, details FROM item WHERE item_type = 1;");
if (test != null)
{
    testList = test.ToList();
}

INSERT/UPDATE

int updateResultCount = DbContext.Database.ExecuteSqlCommand("UPDATE item SET item_type = '2' WHERE item_id = 11;");

SQL -> IQueryable

string sql = "SELECT XXXX ... ";
DbContext.Database.SqlQuery<Entity>(sql).AsQueryable();