rksoftware

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

2020-01-01から1年間の記事一覧

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

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

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

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

Surface Go の充電について

先日ちょっとした理由があって、何にも使っていないし何にも使わない私物 PC が欲しくなり Surface Go を my new gear しました。 ■ 後日に回した充電パフォーマンスの確認 先日の段階では Type-C から Type-C と HDMI と Type-A を生やせるアダプタ を使っ…

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# で Class の定義されている Assembly を取得する

C#

C# でクラスの定義されている Assemby が何かを取得したいことが良くあります。 ■ コード 解説するよりコードが速いでしょう。 ClassLibrary1 というアセンブリに ClassLibrary1.Class1 というクラスがあるものとします。 var type = typeof(ClassLibrary1.C…

Surface Go で Type-C で充電したりモニタ繋いだり

ちょっとした理由があって、何にも使っていないし何にも使わない私物 PC が欲しくなり Surface Go を my new gear しました。 私は風情の分かる都会人なので TypeCover も一緒に購入しました。 https://www.yodobashi.com/product/100000001003948025/ 合わ…

Visual Studio の 16.5.4 がリリースされました

Visual Studio のアップデート 16.5.4 がリリースされました。 ■ 更新内容 問題の解決 今回は 新しいファイル内検索で VSColorOutput 拡張機能が機能しない C++/CLI。struct のインデックス付きプロパティを使うと Internal compiler error になる。 新しい…

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

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

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

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

C# Tokyo オンライン イベントで話をしました

先日 C# Tokyo コミュニティ初のオンラインイベントを開催しました。 445名に参加登録を頂き非常に盛り上がりました。盛り上がっていたと思います。ツイート数は過去最高だったことは間違いないと思います。 ■ Uno Platform 入門 私は Uno Platform 入門 と…

Visual Studio の 16.5.3 がリリースされました

Visual Studio のアップデート 16.5.3 がリリースされました。 ■ 更新内容 問題の解決 今回は mac につながらない .docx ファイルなどいくつかの種類のファイルが開けない 2 step 認証の Apple Developer アカウントを追加できない Xamarin.iOS で watchOS …

Visual Studio の 16.5.2 がリリースされました

Visual Studio のアップデート 16.5.2 がリリースされました。 記事にするには時期を大きく逃していますが、私がアップデート内容をちゃんとする習慣づけられるように今回もしっかり見て行きます。 ■ 更新内容 問題の解決 今回は C++ のコンパイルに関する問…

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 …

Visual Studio の 16.5.1 がリリースされました

Visual Studio のアップデート 16.5.1 がリリースされました。 ■ 更新内容 問題の解決 今回は C++ 関連の問題が 4 件 デバッグと診断に関するスレッドとメモリを大量に使う問題や XBox を含む 3 件 mac とペアリングできない問題 対策されています。 今使っ…

秋葉原 C# もくもく会 #123 勉強会を開催しました

■ C# もくもく会 C# もくもく会 #123 を開催しました。 C# もくもく会 は東京の秋葉原で毎週木曜日に開催している .NET 系の勉強会です。 もくもく自習を基本とし、分からないことを教えあったり情報共有したりしている会です。 定期開催していますので、お…

城東.NET #42 勉強会を開催しました

■ 城東.NET 城東.NET #42 を開催しました。 城東.NET は東京の最近は秋葉原で毎月第 3 水曜日に開催している .NET 系の勉強会です。 発表を中心として、発表でなくとも最近やった事や新しい情報などを参加者で共有している会です。 私は Uno Platform 入門 …

UWP で コードを書き換えた後、緑右三角でデバッグする

UWP のプロジェクトを新規に作成した状態で、Visual Studio のいつもの緑右三角でデバッグしようとしても実行されません。また、一度実行できてもコードを書き換えて緑右三角でデバッグしようとしてもコードを書き換える前の以前の状態で実行されます。 ■ 構…

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" タスクが予期せず…

秋葉原 C# もくもく会 #122 勉強会を開催しました

■ C# もくもく会 C# もくもく会 #122 を開催しました。 C# もくもく会 は東京の秋葉原で毎週木曜日に開催している .NET 系の勉強会です。 もくもく自習を基本とし、分からないことを教えあったり情報共有したりしている会です。 定期開催していますので、お…

Visual Studio の 16.4.6 がリリースされました

Visual Studio のアップデート 16.4.6 がリリースされました。 ■ 更新内容 問題の解決 今回は C++ のコンパイル関連の問題が 8 件 セキュリティに関する問題が 3 件 対策されています。 今回のアップデートはセキュリティの問題が対策されています。素早くア…

秋葉原 C# もくもく会 #121 勉強会を開催しました

■ C# もくもく会 C# もくもく会 #121 を開催しました。 C# もくもく会 は東京の秋葉原で毎週木曜日に開催している .NET 系の勉強会です。 もくもく自習を基本とし、分からないことを教えあったり情報共有したりしている会です。 定期開催していますので、お…

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 してみました。 ■ ジャパニーズ ビジネスパーソン エンジニア は忙しい 注目を集めていますが、実際に触って…

秋葉原 C# もくもく会 #120 勉強会を開催しました

■ C# もくもく会 C# もくもく会 #120 を開催しました。 C# もくもく会 は東京の秋葉原で毎週木曜日に開催している .NET 系の勉強会です。 もくもく自習を基本とし、分からないことを教えあったり情報共有したりしている会です。 定期開催していますので、お…

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

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