「C#」カテゴリーアーカイブ

byte 配列での文字列検索

C# の byte 配列に対して、文字列検索を行うメソッドは標準では用意されていません。でも、必要に迫られることはあるわけで、文字列照合アルゴリズムの一つ「Boyer-Moore(BM)法」を改良したアルゴリズム「Sunday のアルゴリズム (Sunday Algorithm)」の C++ で書かれたサンプルプログラムを C# にポーティングしました。
続きを読む byte 配列での文字列検索

DI コンテナ Unity の利用(その3)

前回に引き続き DI コンテナ Unity の利用についてです。

前回は注入されるインスタンスの生存期間がコンテナと同一となる ContainerControlledLifetimeManager を設定したときの動作について記述したので、今回はコンテナの受け渡しと複数インスタンスの注入について記述します。 続きを読む DI コンテナ Unity の利用(その3)

DI コンテナ Unity の利用(その1)

いまさらですが、DI コンテナの Unity について、使い方などをちょっと調べてみたので、備忘録を兼ねて書いてみます(統合型のゲーム開発環境の Unity の話ではありません。念のため 😉 )。

言うまでもなく DI コンテナのほうの Unity は、Dependency Injection(依存性の注入)の機能を提供するフレームワークで、コンストラクター注入、プロパティ注入、メソッド呼び出し注入の機能がありますが、ここでの話はコンストラクター注入に絞り込みます。 続きを読む DI コンテナ Unity の利用(その1)

Task<T>を返すプロパティ

ある値を取得するプロパティがあって、その値は別メソッドが実行されることにより非同期に変更される場合、読み込みと書き込みの間で同期をとるようにしたうえで、書き込み動作が終了するまで待機状態が発生することになることから、非同期メソッドのように取り扱いたいことがあります(二分探索木から最小値を取得するプロパティなど。。。取得する機能をプロパティではなくて非同期メソッドで実装すればいいという話もありますが)。
つまり、UI スレッドをブロックしないように、次のように書きたいわけです。


    a = await classA.PropertyAsync;

続きを読む Task<T>を返すプロパティ

Visual Studio Community 2013

Microsoft が新たに Visual Studio Community 2013 をリリースしましたね。
これまでは、Express 2013 for Web と Express 2013 for Windows Desktop を使い分けてきましたが、Visual Studio Community 2013 では、Visual Studio Professional 相当の機能が利用できることから、使い分けの不便さや Visual Studio の拡張が利用できない不便さから開放されます 😎 続きを読む Visual Studio Community 2013

データ登録・更新を Windows Azure Web サイトの Web ジョブで行う

前回の投稿で「IPv4 アドレス割り当て先検索」な Web アプリケーションを Windows Azure Web サイト上に作成したことを書きました。このアプリケーションには「IP アドレスの割当先情報」と「国名コードと日本語表示名の対応情報」が必要なこと、またこの情報は変動するものであることから、Windows Azure Web サイトの Web ジョブ機能(2014/03/15時点ではプレビュー版)で一日一回実行するデータ取得プログラムを作成しています。Web ジョブについては「ブチザッキ」さんのサイトで詳しく説明されているので、ここでは今回作成してみた「情報を取得・加工してファイルを作成するプログラム」について書いてみます。 続きを読む データ登録・更新を Windows Azure Web サイトの Web ジョブで行う