| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

差分

ナビゲーションに移動 検索に移動
5,134 バイト追加 、 2020年2月15日 (土) 07:36
ページの作成:「==UWP 開発メモ== [Universal Windows Platform] ==Windows SDK== *https://developer.microsoft.com/ja-jp/windows/downloads/windows-10-sdk ==Windows Template Studi…」
==UWP 開発メモ==
[Universal Windows Platform]

==Windows SDK==
*https://developer.microsoft.com/ja-jp/windows/downloads/windows-10-sdk

==Windows Template Studio==
*https://codezine.jp/article/detail/11282
===インストール===
#メニュー[ツール]-[拡張機能と更新プログラム]
#ダイアログの左側で[オンライン]を選択し、右上の検索窓に「"Windows Template Studio"」と入力、検索すると見つかる
#[ダウンロード]ボタンをクリック


==Windows Community Toolkit==
*https://docs.microsoft.com/ja-jp/windows/communitytoolkit/
===インストール===
#Visual Studio 2017以上
#Build 16299以上のプロジェクト
#NuGetパッケージの管理から、Microsoft.Toolkit.UWP を検索し必要なパッケージをインストール
===参照===
====XAML====
xmlns:controls="using:Microsoft.Toolkit.Uwp.UI.Controls"
====C#====
using Microsoft.Toolkit.Uwp;
==Entity Framework Core==
*https://docs.microsoft.com/ja-jp/ef/core/get-started/uwp/getting-started
*https://docs.microsoft.com/ja-jp/ef/core/get-started/netcore/new-db-sqlite
*http://kuttsun.blogspot.com/2018/01/entity-framework-core.html

===インストール===
# NuGetパッケージマネージャー Microsoft.EntityFrameworkCore.Sqlite
===Sqlite3ファイルが生成される場所===
*ApplicationData.Current.LocalFolder.Path

===ソリューションの構成===
#UWPプロジェクト(Universal Windows)
#Modelプロジェクト(.NETStarndard Library + EntityFrameworkCore.Sqlite + EntityFrameworkCore.Tools)
#移行プロジェクト(ダミー)(.NETCore Console)

===移行===
*https://docs.microsoft.com/ja-jp/ef/core/managing-schemas/migrations/index
*http://typea.info/blg/glob/2017/08/uwp-sqlite-entityframework-core.html

====パッケージマネージャーコンソールから以下を実行====

#プロジェクトの構成
##DbContextのサブクラス
##DbSet<モデル>
##context.Database.Migration() の呼び出し記述
#初期マイグレーションの構成
##移行プロジェクト(ダミー)をスタートアッププロジェクトに設定
##既定のプロジェクトに、Modelプロジェクトを指定
##PM> Add-Migration {初期Migration名}
##ModelプロジェクトのMigratinosディレクトリにDbContextのリフレクションにより移行スクリプトが構成される
#UWPアプリの実行
##context.Database.Migration() の呼び出し
##Sqliteデータベースが作成、マイグレーション実行
#データベースの確認
## select * from __EFMigrationsHistory にマイグレーション情報
#変更マイグレーション
##モデルの追加・変更などをModelプロジェクトに適用
##移行プロジェクト(ダミー)をスタートアッププロジェクトに設定
##既定のプロジェクトに、Modelプロジェクトを指定
##PM> Add-Migration {変更Migration名}
##ModelプロジェクトのMigratinosディレクトリにDbContextのリフレクションにより移行スクリプトが構成される
#以下繰り返し
===Powershellコマンド===
====初期移行====
Add-Migration {任意のマイグレーション名}
*ディレクトリの下で 3 つのファイルがプロジェクトに追加

{|class="wikitable"
!ファイル
!内容
|-
|00000000000000_{任意のマイグレーション名}.cs
|メインの移行ファイル。 (Up() で) 移行を適用し、(Down() で) それを元に戻すために必要な操作が含まれます。
|-
|00000000000000_{任意のマイグレーション名}.Designer.cs
|移行メタデータ ファイル。 EF によって使用される情報が含まれます。
|-
|MyContextModelSnapshot.cs
|現在のモデルのスナップショット。 次の移行を追加するときの変更内容の決定に使用されます。
|-
|}

====データベースを更新====
Update-Database

====移行の削除====
*移行の追加後、適用する前に EF Core モデルの追加変更が必要なことに気付く場合があります。 最後の移行を削除するには、このコマンドを使用
Remove-Migration
====移行を元に戻す====
*移行をデータベースに既に適用しているが、元に戻す必要がある場合、同じコマンドを使用して移行を適用できますが、ロールバックする移行の名前を指定
Update-Database {ロールバックする移行の名前}
====SQLスクリプトを作成====
Script-Migration
====実行時に移行を適用====
*起動中または最初の実行中、実行時に移行を適用するアプリがあります。 Migrate() メソッドを使用してこれを行います
myDbContext.Database.Migrate();
==MVVM Light==
====RelayCommand====
*http://my-clip-devdiary.blogspot.com/2011/01/relaycommand-mvvm-light-toolkit.html
=====コマンドパラメータなし=====
*XAML
<Button Content="Add" Command="{x:Bind ViewModel.AddCommand}" />
*ViewModel
public RelayCommand AddCommand { get; private set; }
= new RelayCommand(async () => {
await new MessageDialog("Foo", "Bar").ShowAsync();
});

案内メニュー