c#

コンピュータ

WPFのMVVMでコンテキストメニューを動的に生成する方法

WPFでコンテキストメニューの項目を動的に生成する方法を試して見ました。コンテキストメニューは親コントロールがあるわけでは無いので、DataContextを直接指定する必要があるとのこと。メニューのヘッダーは表示するのにコマンドが実行されな...
コンピュータ

C#レコードクラスで作るファイルパス管理のサンプルコード3「メソッドチェーン」

LINQのように.でメソッドをつなげるスタイルを試してみました。ソースコードファイル名:FileSystemPath.cspublic sealed record class FileSystemPath{ public string Pa...
コンピュータ

C#レコードクラスで作るファイルパス管理のサンプルコード2

レコードクラスでファイルパス管理クラスFielSystemPathのサンプルコードを書きました。更に機能を追加しようと思い、ファイルの有無などファイルシステムに依存するコードを別クラスFileSystemPathExにまとめました。また、F...
スポンサーリンク
コンピュータ

C#レコードクラスで作るファイルパス管理のサンプルコード

C#のレコードクラスを試してみました。サンプルコードファイル名:FileSystemPath.cspublic record class FileSystemPath{ public string Path { get; } private...
コンピュータ

C#で自動採番を管理するクラス

アプリケーション内で重複しない番号を生成するクラスを作ってみました。public class IdGenerator{ private int _currentId = 0; private readonly object _lock = ...
コンピュータ

C#のコンソールで入力した文字を表示する「順次処理キューによる非同期処理」

コンソールで入力した文字をそのまま出力します。Endと入力すると終了します。文字入力をメインスレッドで、文字出力をサブスレッドで実行しています。スレッド間で文字列をキューを介して送受信しています。using System;using Sys...
コンピュータ

C#のコンソールで入力した文字を表示する

コンソールで入力した文字をそのまま出力します。Endと入力すると終了します。namespace console01;class Program{ static void Main() { while(true) { Console.Writ...
コンピュータ

C#のConsoleでEntityFramework「fluent APIで主キーを定義」

覚えるのが面倒なのでfluent APIを避けてきましたが、エンティティクラスがPOCOなクラスだと何かと都合が良いことに気が付きましたので、fluent APIを試してみたいと思います。サンプルプログラムusing Microsoft.E...
コンピュータ

C#インターフェイスの使いどころ

インターフェイスはメソッド及びプロパティを定義し、クラスで実装して使う機能です。インターフェイスは自体でインスタンスを生成することは出来ませんが、インターフェイスを実装したクラスのオブジェクトを受け入れる変数を定義することが出来ます。機能的...
コンピュータ

C#で要素数が最大1個のコレクション「OnlyOneCollection」を作りNull許容型変数を置き換えてみる。

IEnumerableの実装に挑戦してみたいと思います。こちらのクラスはOnlyOneCollectionとコレクションを銘打ってはいますが、実際は要素数が0または1つのみ格納できるコンテナクラスとなっております。使い道としてはNull許容...
コンピュータ

WPFアプリの初期化処理とValue Object

WPFアプリケーションの初期化処理でアプリケーションでSQLiteを使うとして、データベースファイルを設定ファイルから読み込むようにしたい。データベースファイルのパスは基本的に変更されることは無いので定数(const)で定義したいところです...
コンピュータ

dotnet.exeでC#の単体テスト(MSTest)プロジェクトの作り方

個人でプログラミングを楽しむ分にはどのような方法で開発しても構わないと思いますが、すこし規模が大きくなると、クラス単位に機能や役割を分割することになり、それらを単体テストする必要性を感じることがあります。今回は、テストプロジェクトの作成~単...
コンピュータ

C#でファイル一覧を取得してデータベースのテーブルから情報を取得する。

指定のディレクトリのファイルの一覧を取得し、ファイルのパスをキーとしてデータベースのテーブルからコメント項目の文字列を取得するコードに成ります。// ファイル・ディレクトリの一覧を取得する。using System.IO;using Mic...
コンピュータ

C#でデザインパターン「Singletonパターン」

1つしか存在しないものや、複数あると都合の悪いものを、インスタンス化する仕組み。・基本的に一つしか存在しないもの:システムの設定情報ロギングサービスプリンタスプーラー・複数存在すると都合の悪いもの:データベース接続プールキャッシュマネージャ...