https://docs.microsoft.com/ja-jp/ef/core/platforms/
Runtime Error が出て無理だった…
http://bit.ly/2EBsusV
Category
を追加
Database
Item Table
Database
Item Table
Category Table
Data Migration
https://github.com/tafuji/Xamarin-EFCore
https://docs.microsoft.com/en-us/ef/core/
https://blog.xamarin.com/building-android-apps-with-entity-framework/
http://miaw.xyz/b/post/2017/08/03/xamarin-native-tutorial-invoiceje-sqlite-
database
[Key]
[Column("text")]
Data Annotation Attributes
Key: Primary key
Column: Column name
DbContext
DbSet<Item>
OnConfiguring
UseSqlite
• Database を作成できるパスが Platform
で異なる
• パスを取得する処理を Native で実装
• DependencyService 等で Native の取得
処理を呼び出す
https://docs.microsoft.com/en-US/ef/core/providers/sqlite/limitations
DotNetCliToolReference
• プロジェクトをアンロード
• プロジェクトファイルに上
記の DotNetCliToolReference
の記述を追加
DbContext を含む
プロジェクト
Migration 名
DbContext
OnConfiguring
UseSqlite ConnectionString Migration Tool 実行時に接続文字列がないとこ
こで例外が発生し、コードの生成に失敗する
デフォルトコンストラクタで
ダミーの接続文字列を作成
アプリケーションのコードか
らは、接続文字列を引数とす
るコンストラクタを利用する
context.Database.Migrate
 
Linking の構成なし
アプリケーションのサイズが大きくなる
 Category Table
 Seed Data
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
Data Annotation
自動生成列
DbContext
DbSet<Category>
既存の DbContext にEntity を追加
Xamarin with Entity Framework Core
Xamarin with Entity Framework Core
Xamarin with Entity Framework Core
Xamarin with Entity Framework Core

Xamarin with Entity Framework Core