技術メモ

【UWP】WindowsFormとの対応表

WindowsForm UWP
クリックイベント private void button_Click(object sender, EventArgs e) private void button_Click(object sender, RoutedEventArgs e)
ラベルコントロール Label TextBlock
コントロール表示 control.Show() control.Visibility = Visibility.Visible
コントロール非表示 control.Hide() control.Visibility = Visibility.Collapsed
テキストボックスクリア textBox.Clear() textBox.Text = “”
テキストボックスKeyDownイベント private void textBox_KeyDown(object sender, KeyEventArgs e) private void textBox_KeyDown(object sender, KeyRoutedEventArgs e)
TextBoxの最終行へスクロール https://dobon.net/vb/dotnet/control/tbscrolltolast.html https://code.msdn.microsoft.com/windowsapps/How-to-scroll-to-the-a8ea5867
タイマー Timerコントロール DispatcherTimerコントロール
タイマーTickイベント private void timer_Tick(object sender, EventArgs e) private void timer_Tick(object sender, object e)
EntityFramework EntityFramework Microsoft.EntityFrameworkCore

プロジェクトのターゲットの最小バージョンをWindows 10 Fall Creators Updateに上げないと、NuGetから入れられない

SQLite System.Data.SQLite Microsoft.EntityFrameworkCore.Sqlite

SqliteConnectionやSqliteCommandのようにSQLiteの表記が先頭以外小文字になっているので注意

SQLite新規ファイル作成 SQLiteConnection.CreateFile(“ファイル名”); CreateFileが無くなっていた・・・
アクセスするだけで、0KBのファイルが作成された。
フォルダ名を指定せずにファイル作成 カレントディレクトリに作成される Windows.Storage.ApplicationData.Current.LocalFolder.Path

例)C:\Users\ユーザ名\AppData\Local\Packages\xxxxx-xxxxx-xxxxx-xxxxx_xxxxx\LocalState

【ASP.NET】【IIS Express】BadImageFormatExceptionが発生する

Visual Studio 2017のASP.NETにて、Webサイト起動時に、
[BadImageFormatException: ファイルまたはアセンブリ ‘xxx’、またはその依存関係の 1 つが読み込めませんでした。間違ったフォーマットのプログラムを読み込もうとしました。]
のエラーが発生して起動に失敗する。

この場合、Visual Studioのツール→オプション→プロジェクトおよびソリューション→Web プロジェクト→「Webサイトおよびプロジェクト用IIS Expressの64ビット バージョンを使用する」にチェックを付ければOK!

【UWP】NuGetでEntityFrameworkCoreをインストールするとエラーが発生する

  • エラー内容
    Microsoft.EntityFrameworkCore 2.1.1 は uap10.0.10240 (UAP,Version=v10.0.10240) / win10-arm64-aot と互換性がありません。 パッケージ Microsoft.EntityFrameworkCore 2.1.1 がサポートするもの: netstandard2.0 (.NETStandard,Version=v2.0)

 

  • エラー解消方法
    プロジェクトのプロパティ→アプリケーション→ターゲットを、Windows 10の無印から、Fall Creators Updateに変更したところエラーが解消された!

【Visual Studio2017】デバッグが極端に遅い場合は、IntelliTraceを無効にする

EXE単体で動作させた場合と、Visual Studio2017でデバッグした場合とで動作速度が極端に違う現象に遭遇。
ツール→オプション→IntelliTraceにて、「IntelliTraceを有効にする」のチェックを外すことで、EXE単体の動作速度とほぼ変わらずデバッグできるようになった。 続きを読む 【Visual Studio2017】デバッグが極端に遅い場合は、IntelliTraceを無効にする

【C#】EXEが保存されているパスからの相対パスを絶対パスに変更

/// <summary>
/// EXE保存パスからの相対パスを絶対パスに変更
/// </summary>
/// <param name="relativePath">例.「Setting\Setting.xml」</param>
/// <returns>EXE保存パス+relativePath</returns>
public static string GetFullPath(string relativePath)
{
    //EXE保存パス取得
    string exePath = System.Reflection.Assembly.GetEntryAssembly().Location;

    //EXE保存パス+渡された相対パス
    return System.IO.Path.Combine(System.IO.Path.GetDirectoryName(exePath), relativePath);
}

【Visual Studio2017/2019/2022】コマンドラインからビルドすると「8000000A」エラーが発生する

現象

devenv.exeをコマンドラインから実行し、ソースをビルドすると、
ERROR: An error occurred while validating. HRESULT = ‘8000000A’
が発生してビルドに失敗する。 続きを読む 【Visual Studio2017/2019/2022】コマンドラインからビルドすると「8000000A」エラーが発生する