rksoftware

Visual Studio とか C# とかが好きです

.NET Core

Uno Platform で世界に挨拶する簡単なハンズオンサンプルを作りました

Uno Platform で世界に挨拶する簡単なハンズオンサンプルを作りました。 正確には以前に一回作ったのですが、最近の事情でお蔵入りしていたので平日の夜にゆっくりやっても終わるように分量を短くしたものを作りなおしました。 ※ 本当はまだ、実際にゆっくり…

Uno Platform の世界にあいさつする系のアレを(微妙に)更新しました

以前にタイミングが有って Uno Platform で世界にあいさつする手順を作りました。 最近の騒動で眠っていたのですが、そろそろ出番かと思って少しだけ更新しました。 色々なコードを試したのですが、リストの動きが一部のプラットフォームで違ってしまい、な…

Uno Platform が VSCode でデバッグできるらしいので試してみた 目次

Uno Platform が VSCode でデバッグできるらしいので試してみています。 ちょっと横道にそれたりなどしながら見ているのでまだ全然進んでいませんが少しずつ見て行きます。 Uno Platform 本家の記事へのリンクです。 ■ Uno Platform が VSCode でデバッグで…

Uno Platform が VSCode でデバッグできるらしいので試してみた その3

つづき 前回まででひとまずプロジェクト (ソリューション) が生まれたので実行して行きたいと思います。まずは、今回の元記事の本体である、Visual Studio Code での Wasm。Windows で行ってみます。 ■ ソリューションを VSCode で開く (Windows) コマンドプ…

Uno Platform が VSCode でデバッグできるらしいので試してみた その2

つづき ■ プロジェクト新規作成! 記事にしたがって、プロジェクトを新規作成は次の様でした。 dotnet new unoapp -o MyApp -ios=false -android=false -macos=false -uwp=false --vscodeWasm この時に大量についているオプション。明らかに対象プラットフォ…

Uno Platform が VSCode でデバッグできるらしいので試してみた その1

Uno Platform が VSCode でデバッグできるらしいので試してみています。 ちょっと横道にそれたりなどしながら見ているのでまだ全然進んでいませんが少しずつ見て行きます。 Uno Platform 本家の記事へのリンクです。 対応は WebAssembly だけとのことですが…

C# でクラスがとあるインタフェースを実装しているかを調べる

C# でクラスがとあるインタフェースを実装しているかが知りたくなることが、稀に良くあります。 ■ Type.GetInterfaces メソッドの結果に Contains メソッド クラスが実装しているインタフェースのリストは Type.GetInterfaces メソッドで簡単に取得できます…

C# でクラスが実装しているインタフェースを取得する

C# でクラスがどのインタフェースを実装しているかが知りたくなることが、稀に良くあります。 ■ Type.GetInterfaces メソッド Type.GetInterfaces メソッドで簡単に取得できます。 ■ 実例 namespace ConsoleApp1 に次のインタフェースとクラスがあるものとし…

C# で参照で追加したプロジェクトのクラスが見つからない

少し詳しく表現すると、参照で追加したプロジェクトのクラスの定義されている Assembly (追加したプロジェクト) がロードされていない、です。 例えば次のように ClassLibrary1 プロジェクトを参照しているものとします。 <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <TargetFramework>netcoreapp3.1</TargetFramework> </PropertyGroup> <ItemGroup> </itemgroup></project>

C# で現在読み込まれている Class を取得する

C# で現在読み込まれている Class を取得したいことが良くあります。 ■ 前提知識 以前に書いた次の「C# で現在読み込まれている Assembly を取得する」記事が前提です。 ■ コード 解説するよりコードが速いでしょう。 Console アプリを作成して Class の Typ…

C# で現在読み込まれている Assembly を取得する

C# で現在読み込まれている Assembly を取得したいことが良くあります。 ■ コード 解説するよりコードが速いでしょう。 Console アプリを作成して Assembly を表示するコードです。 AppDomain.CurrentDomain.GetAssemblies() 取得コード(例) foreach (var as…

C# で DLL をファイル名で読み込む

DLL をファイル名で動的に読み込みたいことはあまりないかもしれませんが、ない事もない要件です。 ■ Assembly.LoadFrom(string) メソッド Assembly.LoadFrom(string) メソッドで読み込めます。 引数の string は dll の拡張子まで含めたパスです。 こんな感…

C# 文字列を連続で結合するときの + と StringBuilder の速さ

以前に文字列を + で結合する場合と StringBuilder で Append する場合どちらが速いかという話をどこかで見た記憶があります。その記憶では 10 回くらい結合するなら StringBuilder、それ未満なら + が速いとされていた気がします。 今、試したらどうなるか…

class のインスタンス化の計測

C# でクラスのインスタンス化にはいくつか方法があります。 少し気になって (基準として) 普通に new して Factory メソッドで (メソッド内部で new して) Activator で リフレクションでコンストラクタで インスタンス化して時間を計ってみました。 ■ 結果 …

Uno Wasm で TypeError: Failed to fetch が出る

Uno Wasm で Web API を使おうとすると TypeError: Failed to fetch というエラーが出ることがありました。 ■ パターンA http どうも SSL でないとエラーになってしまうようです(http がダメ、https なら OK)。 ■ パターンB oreore証明 https なら何でもよい…

Uno Wasm を IIS で動かす

Uno Wasm を IIS で動かそうとするとエラーになって動きませんでした。 エラーの内容 HTTP Error 500.19 - Internal Server Error The requested page cannot be accessed because the related configuration data for the page is invalid. Detailed Error …

UWP で XAML で ViewModel を指定する

UWP で XAML で ViewModel を指定する際に WPF とほんの少し違ったので。 ■ WPF の場合 ViewModel のクラスが名前空間 WpfApp1.ViewModels に MainPageViewModel として作っているとします。その場合 XAML で Window の属性に xmlns:vm="clr-namespace:WpfAp…

Uno Platform が MSB4018 エラーでビルドできない

Uno Platform が MSB4018 エラーでビルドできないことがありました。 発生条件 プロジェクト作成後、ビルド wasm プロジェクト オフライン 発生するエラー エラー MSB4018 "UnoInstallSDKTask_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" タスクが予期せず…

Uno Platform でページを追加する (mac)

Uno Platform は Windows の Visual Studio でなら簡単にページを追加できます。 しかし、残念ながら mac では GUI でポチポチしてページを追加することはできそうにありません。 ■ ポチポチできないなら Uno Platform でアプリを作る際のソースコードはテキ…

Uno Platform で Hello world サンプルを GitHub に作りました。

■ Uno Platform で はろーわーるど 最近 Uno Platform がスゴイ注目を集めています (私調査)。 そこで先日頑張って、Uno Platform で Hello world してみました。 ■ ジャパニーズ ビジネスパーソン エンジニア は忙しい 注目を集めていますが、実際に触って…

Uno Platform ふたつの空白のページ

Uno Platform で遊んでいたらフシギなことに気が付きました。 ■ 不思議画像 何が不思議か? 項目を上から見てみましょう! 一つ目は、「 空白のページ 」。二つ目は、「 空白のページ 」。 逆にしてみましょう。 二つ目は、「 空白のページ 」。一つ目は、「…

Uno Platform で はろーわーるど 目次

Uno Platform を環境構築から C# 世界に挨拶するコードを書いて、Uno Platform を完全に理解することを目指す一連の記事です。 ■ 環境構築 ■ プロジェクト(ソリューション)の新規作成 ■ イベント処理と画面更新 ■ データバインディング ■ リスト表示と画面遷…

Uno Platform で はろーわーるど その6

Uno Platform の はろーわーるど 一連の記事の目次です ■ 今回の記事 Uno Platform のプロジェクトを作成し色々する記事を以前に書きました。 今回はプラットフォーム毎にコードなどを変えてみます。 ■ C# コードをプラットフォーム毎に変える #if XXXXX か…

Uno Platform で はろーわーるど その5

Uno Platform の はろーわーるど 一連の記事の目次です ■ 今回の記事 Uno Platform のプロジェクトを作成し DataBinding で動きをつける記事を以前に書きました。 今回はデータのリスト表示と画面遷移をしてみます。 なお、コピペ量を減らすためにここから先…

Uno Platform で はろーわーるど その4

Uno Platform の はろーわーるど 一連の記事の目次です ■ 今回の記事 Uno Platform のプロジェクトを作成しひとまず動きをつける記事を以前に書きました。 今回は皆さん大好き、DataBinding をしてみます。 ■ Data を Binding する画面要素を追加 前回に動き…

Uno Platform で はろーわーるど その3

Uno Platform の はろーわーるど 一連の記事の目次です ■ 今回の記事 Uno Platform のプロジェクトを作成しひとまず実行する記事を以前に書きました。 コードを変更し、動きのあるアプリにして行きます。 ■ ScrollViewer を画面全体に表示 まず、画面全体に…

Uno Platform で はろーわーるど その2

Uno Platform の はろーわーるど 一連の記事の目次です ■ 今回の記事 Uno Platform の開発環境を用意する記事を以前に書きました。 プロジェクトを作成して行きます。 ■ 新しいプロジェクトの作成 新しいプロジェクトの作成で次のテンプレートを選択しプロジ…

Uno Platform で はろーわーるど その1

Uno Platform の はろーわーるど 一連の記事の目次です ■ 今回の記事 Uno Platform でソリューション(プロジェクト)を新規作成して C# 世界に挨拶する記事は以前に書きました。 今回はもう一歩前へ進んで、開発環境の構築からデータダインディングや画面遷移…

dotnet のテンプレートのバージョンを確認する

dotnet のテンプレートのバージョンを確認する方法は、次の stackoverflow にありました。 方法だけ抜き出すと dotnet new -u または dotnet new --debug:showconfig 前者のほうが行間などあって見やすい気がしますが、私は標準的な日本人らしく一覧性の高い…

C# で定義が未知の Json を扱う (.NET Framework / .NET Core) まとめ

以前に書いた一連の記事をまとめた記事です。 C# で定義が未知の Json を扱う (.NET Framework / JObject) - rksoftware C# で定義が未知の Json を扱う (.NET Framework / ExpandoObject) - rksoftware C# で定義が未知の Json を扱う (.NET Core / System.…