documents:olddiary:2017:201709
目次
←201706^start|目次^201710→
2017-09 日記コピー
2017-09-03 SQLiteのEntity FrameworkはCode First 未サポート
[Database] System.Data.SQLiteではEntity FrameworkでCode Firstが使えない
スタックオーバーフローとか調べてようやく気が付きました。(;´д`)トホホ…
context.Database.CreateIfNotExists(); context.Recs.Add(Rec1); context.Recs.Add(Rec2); context.SaveChanges();
こんなコードを書いてSQLSERVERローカルデータファイルで試すと無事に終了し、テーブルもレコードも生成されている。 よしよしと接続先をSystem.Data.SQLite(SQLite)に切り替えてみるとSaveChanges()でException発生。 調べると…「SQL logic error or missing database no such table: Recs」
The SQLite provider for EF6 does not support Code First
ちょっと待ちなさいよ、「Create Table Recs(…)実行するのが君の仕事じゃろ?」と。
検索するとVS2015+SQLiteの組み合わせを使っている話が結構出てくる。……まぁ、VS2015で使う際にNuGetでは駄目で自分で公式サイトからダウンロードとインストールが必要だったりする手間がかかるけど。
なので、使えない訳ではないはず。
そして先のスタックオーバーフローのサイトで「The SQLite provider for EF6 does not support Code First / Migrations workflow, so you must manually create the database outside of your EF6 workflow.」な回答を見つける……
あ、そうかー
うまくいってるところの記事は確かにデザイナで作ったり事前にDDL流してテーブル作ってるねー
(;^ν^)ぐぬぬ…
documents/olddiary/2017/201709.txt · 最終更新: 2024/04/14 11:23 by k896951