C#

Task could not find "AL.exe" でエラーが出た時の対応

開発者の環境では出ないエラー テスト用のビルドは本番とほぼ同様の環境で行うようにしているため、Visual Studio のような開発者が使う IDE はインストールせず、Jenkins から MSBuild を叩いてビルドするようにしています。 ですが、その環境の中で妙なエ…

NUnit(とか) に簡単なアサーションを提供してくれる Chaining Assertion

C#

先日の Should の記事の ブックマークコメントで id:neuecc さんにコメントいただき、「Chaining Assertion」を紹介いただきました。neuecc さんはライブラリの作者さんですね。ありがとうございます。 Should はどうだ? 個人的には、Should の書き方にはそ…

NUnit に Spec っぽい書き方を提供する Should

社内では NUnit が主流なのですが、やっぱり rspec みたいな should〜 って書き方は読みやすいなーと思うのです。Assert はそれはそれで見慣れているのですが。 NSpec や MSpec のような BDD フレームワークを使えばというのもあるのですが、QAという立場上…

コマンドラインツールを簡単に作る CLAP

C#

Java の頃は Commns CLI があったのでコマンドラインツールを作るのにいちいち args をパースするなんて厄介な事はしなくて済んでいたのですが、C# になってからは同じようなものが見つからずせこせこ引数を読み取ったり、メンドイ時は「第一引数は〜、第二…

NSpec を使って .NET Framework 2.0 のテストをする

まだ 2.0。。。 はい、弊社の .NET Framework はまだ 2.0 です。今や最新版の半分という状況で、かなりゲンナリしておりますががんばっております。 発端は RSpec 別事業部は Ruby on Rails で開発を行っており、たまたまそこにパートナーで Ruby がかなりデ…

ASP.NET MVC 2 と Dynamic Data を共存させて IIS 6 で動作させる

まあ、うちの環境が IIS 6 なので備忘的にメモ。ASP.NET MVC も 1 と 2 でデプロイ方法も微妙に違うもよう。 ※どうせすぐ MVC 3 が正式リリースされるんですよね、まあいいんです。 ASP.NET MVC 2 と Dynamic Data のプロジェクトを共存させる。 参考サイト …

Edmgen.exe をもう少し使う

前回 PostgreSQL で Entity Framework をするために Edmgen,exe を使って定義ファイルとソースの生成を行いました。 Edmgen.exe は DB からの直接生成以外にもいくつかのオプションを持っています。 EDM ジェネレーター (EdmGen.exe) - MSDN 前回は DB から…

Entity Framework で bit(8) の対応ができ・・・なかった。

ADO.NET Dynamic Data のために 前回で Edmgen で Npgsql から Entity Framework のコードを生成して ADO.NET Dynamic Data をやってみたわけだが、bit 型はサポート外だと言われてしまっていた。 まあ、bit 型ぐらいいいかと思ったが、うちのシステムは bit…

.NET でもスキャフォールディングで楽したい

ADO.NET Dynamic Data と ADO.NET Entity Framework ADO.NET Entity Framework は データベースのスキーマと Entity Data Model みたいなオブジェクトのモデルをマッピングするフレームワークです。 O/R マッパとどう違うのかと言われると実はよく分かってい…

Windows Azure上でWCF RIA Servicesを使ったSilverlight4アプリを作るための準備

インストール作業だけで半日がかりになってしまったので、PCがぶっ壊れてしまったときのためにメモ。 ※ちなみに半日かかったのは、僕のPCが決してスペックの高いものでなかったことにも起因している。 1. 何はなくともVisaul Studio 2010 評価版ダウンロード…

ラムダ式でSQLクエリを作ろう

C#

単純なWhere句をいかに外からもスマートに見せるかってのと、なんとなくRailsに憧れて、でもできればコンパイル言語としての固さも残してって事でラムダ式でSQLクエリを作ることにした。 まああれですよ、Railsで Table.find(:all, :conditions=>"stasus = 5…

選択したメールアイテムの情報取得から発行まで

前回の続き。カスタム作業領域にWPFコントロールをホストした部分からです。 とりあえずWPFコントロールにはTextBlockを一つ配置しているとします。 WPFコントロールにTextBlockを更新するメソッドを追加する テストコードなのでデータバインドとかせずにベ…

VSTOでOutlookにサイドバーとしてWPFコントロールを付ける。

Outlookにサイドバーみたいなものを付けたい。 さっそくVSTOのプロジェクトを作成し、新しい項目からそれらしきモノを探してみる。 Outlookフォーム領域 これじゃないかと選択したのがOutlookフォーム領域。以下参考記事。 MSDNの記事 Outlook フォーム領域…

Scalaの連続パラメータ

C#での可変長引数は void Function(params string[] args) { // }と書く。 対してScalaでは def function(args: String*) = { // }と記述する。呼び出しかたは同じ。 function(“a”, “b”, “c”)とする。 ただし、C#はの場合は以下のように配列を渡せる Functio…

一回しか実行されないファクトリメソッド

C#

DIで注入とかしないけど、とりあえずサービスクラスとかをプロパティ経由で取得したりするようにする場合が多い。けど、そんな時はDIでいうとこのシングルトンでよくて、同じオブジェクトでいい方が圧倒的に多い。 そんな時どうしてたかった言うと private S…

Listのメソッド。Scalaの場合とC#での書き方の違い。

あまり対比させるのは良くないと思いつつ。ただLinqは無しで。なぜって、僕の仕事環境ではLinqはまだ使えないからですよ!悔しいからですよ! 対比表 条件 Scala C# 生成 val list = List("a", "b", "aa", "bb", "ccc") var list = new List() { "a", "b", "…