2008-11-01から1ヶ月間の記事一覧

PostgreSQL 用の ADO.NET データプロバイダ

C#

以前、 MySQL 用の ADO.NET データプロバイダを紹介しましたが、PostgreSQL 用もあったんですね。 PgFoundry: Npgsql .Net Data Provider for Postgresql: Project Info High Perfomance ADO.NET Provider for PostgreSQL with Significantly Improved Abili…

イベントを発生させるメソッドの実装(2)

C#

イベントとイベントを発生させるメソッドを public class Sample { public Sample() { // 何もしないイベントハンドラを1個登録しておく。 Hello = delegate {}; } public event EventHandler<HelloEventArgs> Hello; protected virtual void OnHello(HelloEventArgs e) { //</helloeventargs>…

ビジネス頭を創る7つのフレームワーク力

ようやく読みました 最近読んだ本の中では一番ビジネス本ぽかったです。いや、ビジネス本なのか。前に読んだ「新・知的生産術」はITを使った情報処理が中心だったが、本書は頭で考える部分が中心になっていました。正直、今の私にはちょっと難しかったです(;…

Unity と PIAB を連携させる

C#

はじめに Unity と Policy Injection Application Block (以下 PIAB) と連携させてみました。 カスタム Callhandler とカスタム HandlerAttribute [ConfigurationElementType(typeof(CustomCallHandlerData))] public class EventLogCallHandler : ICallHand…

PIAB の中身を見てみた

C#

はじめに 「使っているものの仕組みをしれ!」みたいな教えを以前受けた気がするので、Policy Injection Application Block のソースコードを覗いてみました。 先日のエントリ『PIABで属性を使ってインターセプト対象メソッドを指定する』で作成したサンプル…

PIABで属性を使ってインターセプト対象メソッドを指定する

C#

はじめに 以前書いた Policy Injection Application Block のサンプルは構成ファイルでインターセプトするメソッドを指定していました。インターセプトするメソッドは属性でも指定可能なので、今回はその方法を試してみました。 カスタム CallHandler を作成…

Exception を再スローしたときの StackTrace

C#

仕事中に質問があったので、簡単なサンプルで確認。 class Program { static void Main(string[] args) { try { Bar bar = new Bar(); bar.DoTest(); } catch(Exception ex) { Console.WriteLine("==========Exception 再スロー後=========="); Console.Writ…

Policy Injection Application Block を使ってロギング処理を分離する

C#

いきなりですが 簡単なサンプルを。 class Program { static void Main(string[] args) { var animal = new Wankuma(); animal.Cry(); Console.ReadLine(); } } public class Wankuma { public void Cry() { Console.WriteLine("クマ〜"); } } これを実行す…

WPF で未処理例外に対応する

C#

すべての未処理例外をキャッチするには、Application クラスの DispatcherUnhandledException イベントを使用すればいい。アプリケーション内の App.xaml に

決定版 ケンタロウ絶品!おかず

長かったプロジェクトも10月で一段落したので、自炊に再挑戦します。そのために購入したのがこちら。決定版 ケンタロウ絶品!おかず (主婦の友新実用BOOKS)作者: ケンタロウ出版社/メーカー: 主婦の友社発売日: 2003/10/01メディア: 単行本購入: 10人 クリッ…

UnityContainer を拡張する

C#

はじめに UnityContainer を拡張するために UnityContainerExtension クラスが用意されています。このクラスを継承して独自の Extension を作れば、UnityContainer の挙動を拡張できます。例として、先日のサンプルを書き換えてみます。 独自の Extension を…

構成ファイルを記述して依存性を注入する

C#

はじめに 先日はコードでの依存性注入を試したので、今回は構成ファイルを使ったサンプルを作成してみました。先日のサンプルが元になっています。 参照するアセンブリを追加 Microsoft.Practices.ObjectBuilder2 Microsoft.Pracitces.Unity だけじゃなく Mi…

依存性注入が必要なクラスのインスタンスを注入するとどうなる?

C#

気になったのでサンプルを作って試してみました。タイトルが変な気がしますが、コードを見れば何をやっているのか分かるはず…。(適切なタイトルがあれば教えてください><) // 感情インタフェース public interface IFeeling { // 感情にあった鳴き声を出…