normalian blog

Let's talk about Microsoft Azure, ASP.NET and Java!

Entries from 2009-01-01 to 1 year

 Windows Azure SDK のインストールについて(2010年12月21日に修正)

Azure SDK 1.3のセットアップ方法を id:waritohutsu:20101221:1292944187 に記述したので、必要な場合はこちらを参照してください。 入れよう入れようと思って放置していたWinodws Azure SDKのインストールメモ。基本的にはMicrosoft本家のAzureサイトを見れ…

ラムダ式での上位スコープの保存

ちょっと下記で書いてる「究極のC#プログラミング」本で、ラムダ式の上位スコープ保存っぷりを書いてあったので写経。 class Program { public static void Main(string[] args) { Console.WriteLine("-------- 上位スコープ保存1 ------------"); IList<Action> li</action>…

C#でmap、filter、reduce

「Googleを支える技術」で?一躍有名になった感がするmap、filter、reduceですが、LINQ(C#)で対応させると以下になるんでしょか? 一般? LINQ(C#) map Select filter Where reduce Aggregate せっかくneueccさんがAggregateの良いサンプルを書いてくださっ…

GroupBy、OrderByを使ってみる

DTOリストの中から年齢最少の幼女を抜き出すサンプル。 ちょっと走り書きしてみた。 using System; using System.Collections.Generic; using System.Linq; using System.Text; class Program { static void Main(string[] args) { IList<SmpDto> list = new List<SmpDto>(ne</smpdto></smpdto>…

Zipを使ってみる

AsParallelと同じく、.NET4.0betaからの回し者Zipを使ってみた罠。 Haskellとかを使ったことのある人なら、メソッド名でイメージがつくんじゃないかと。では、コード例。 class Program { static void Main(string[] args) { var range1 = Enumerable.Range(…

AsParallelを使ってみる

せっかく.NET4.0 betaが入っているので、ついついAsParallelを使ってみるわな。 どうやら、LINQインターフェースに対して、AsParallel()を実行すると並列実行型のインターフェースにバインドされるらしい。 まずはサンプルコード using System; using System…

ToLookupを使ってみる

普段使っておきながら、結構使いどころを忘れるToLookupメソッドなどを書いてみる。以下がサンプルコード&実行結果。 public static void Main(string[] args) { List<int> intList = Enumerable.Range(1, 6).Concat(Enumerable.Range(1, 4)).ToList(); List<string> str</string></int>…

INETA Day 2009 に参加してきたメモ

INETA Day 2009に参加してきましたので簡単にメモをばを公開。さすがにこれ以上延ばすと時事ネタじゃなくなってしまいそうなので、不完全だろうが何だろうが公開。 実はINETA Day 2008が初めて行ったに等しい勉強会だったりしたので、1年越しに思う事がいろ…

VSTOとか XML-RPCとか

C#

.NETでTracのクライアントを作っている人がいるらしい。要素技術として掲題の物があるので簡単にリンクだけ張ってみる。 XML-RPC.NETXML-RPC.NET http://www.xml-rpc.net/ Visual Studio Tools for Office 製品情報 http://www.microsoft.com/japan/msdn/vst…

C#でシャッフルしてみる

C#

「C#でリストをシャッフルする方法について」の議論をちょこちょこ聞いたので、ためしにシャッフルなクラスを作ってみた。 けど・・・、うーん・・・、いろいろ微妙な気がする。まずは書いたコード片を載せてみるテスト。 一応、Genericsを使ってるけど微妙…

 ASP.NET MVCでQuill 〜その2〜

id:waritohutsu:20090601:1243835418でASP.NET MVCでQuillを使用する方法を書いたんですが、問題点がありました。実は初回リクエスト時にはインターフェースにクラスがインジェクションされるのですが、2回目のアクセスではインジェクションが失敗して、イン…

文字列情報だけでインスタンス生成&メソッド実行

C#

最近流行の型付言語のFW*1では、ほぼ間違いなくリフレクションを使っているのでちょっと復習。文字列情報だけでロード済みアセンブリ内のオブジェクトについて「インスタンスの生成」と「インスタンスメソッドの生成」を実行する。コード例は以下。 string f…

ラムダ式

ラムダ式はローカルスコープの変数値を保存していると聞いたので試してみた。コード例は以下。 public class LambdaFactory { private static int x = 0; static public Func<int> Create() { //あえてここでローカル変数に代入 int y = ++x; return () => y; } }</int>…

ループの回し方

C#でループをまわすと言うと、以下の二パターン位がぱっと思いつく手法? for(i=0; i foreach( var val in collection ) でくるくる? 最近、別の解法もある事を知ったので簡単にメモ。何を使うかというと、System.Arrayクラスを使う方法で、具体的な使用例…

ASP.NET MVCにおけるFilterの作成方法と実行順序制御

フィルタって? ASP.NET MVCでは、「System.Web.Mvc.Controllerクラスを継承した自作コントローラークラス」がロジックの中核を担います。以下の例はデフォルト生成されたコントロールクラスです。 public class HomeController : Controller { public Actio…

ASP.NET MVCの処理(Controller、Viewの実行される場所について)

ASP.NET MVCが処理される流れとして、ちょっと御幣がありますが、まずはSystem.Web.Mvc.MvcHandler#ProcessRequest内で以下な感じで実行される。 public class MvcHandler : IHttpHandler, IRequiresSessionState { protected internal virtual void Process…

Binder関係について

単純に備忘録。後でまとめないと System.Web.Mvc.BinderAttributeを使う場合 BinderAttributeはController#actionメソッドシグネチャに対して、以下な感じで使われる。 public ActionResult BindAttribute2Action([Bind(Include = "Age")] HogeViewModel hog…

ASP.NET MVC for Visual Studio 2010 betaリリース!

さあ、これでASP.NET MVCのときだけVisualStudio2008とか言わなくてすむんだ、ばんざーい!! http://haacked.com/archive/2009/06/09/aspnetmvc-vs10beta1-roadmap.aspx

わんくま東京勉強会#34

さて、わんくま東京勉強会#34 に行ってまいりました。 今回はLTで発表する側として参加してまいりました。勉強会の開催からは若干日が開いてしまいましたが、本人が覚えてる範囲内で記述してみます。 準備 集合場所を勘違いして赤坂近辺を迷い続けるという失…

わんくま東京勉強会#34 〜LTプレゼン資料〜

うーん、はてなに資料を張る何かを使ってみたのですが、何故か資料がイマイチ・・・orz

ASP.NET MVC with Quill

色々とカスタマイズが可能になっているASP.NET MVCであり、ASP.NET MVCとDIコンテナ系との親和性はかなり高いと思います。しかし、なぜかNInjectでの記事は載っているのに、日本語の記事でエントリーに上がっていません。なので、記事がなかったので書いてみ…

SliverlightでRSSをロードしようとしてみた

せっかく会社でもVS2010 beta 入れたので、Silverlightの開発をしてみてた。ついでにさらさらっと以下のコードを書く。 private void button1_Click(object sender, RoutedEventArgs e) { var time = DateTime.Now.ToString(); textBlock1.Text = "おされた…

ASP.NET MVCでエラーハンドリングを行う場合

ASP.NET MVCでFilterを使えること自体は皆さん御存知だと思いますし、Usa*Usaさんあたりを見てもらえればよいと思います。が、Exception自体については余り語られていません。Exception系の処理がどう走っているかを軽くまとめて見ます。 まずはまとめから …

JSON Resultを返す

もう完全に単なる備忘録。DTO系のデータを入れ子にしたり、継承したり、リフレクションしたりは別途検討。 やっぱASP .NET MVC便利だよ。BtoC向けサービスならこっちの方が楽そう。 普通にIList系の結果を返す Controller public class OtherResultControlle…

わんくま同盟 東京勉強会#33

いつもどおり、わんくま勉強会に行ってまいりました。中さんには色々とお世話になっているにも係わらず、今回は遅刻するという失態を演じてしまいました…orz 途中からの参加でしたが、見聞きした範囲内でログっときます。 「SQL Serverユーザーの為のOracle…

オレオレ Interceptor

ActionMethodSelector.cs辺りを眺めつつ、C#のリフレクション使って細々とInterceptorもどきを書いてみた。 using System; using System.Linq; using System.Reflection; class Program { static void Main(string[] args) { ConcreteDummyAction obj = new …

Controllerについて

MVCのソースコードを眺めていたので備忘録。 「DefaultControllerFactoryTest.cs」ファイル内に以下のコードを発見。 // BAD: type isn't public internal class NonPublicController : Controller {} // BAD: type doesn't end with 'Controller' public cl…

データベースアクセス時のアンチパターン

SQL Serverに限らず、DB接続時にやってはいけない事として、「DB関連オブジェクトの共有」という物があります。 ちょっと纏まって無いですが、後で例に挙げるコードだとこんな例外がでます。 $exception {"操作が無効です。接続は閉じています。"} System.Ex…

SQL Serverがつながらない件について・・・

現象 SQL Server 2005から、SQL Server 2008にアップグレードしたところ、Visual Studio 2008 SP1 から *.mdfファイルがアタッチできない事件が起きました。その際に発生したエラーメッセージが以下となっていました。 エラー1 ユーザーインスタンスのプロ…

C#でのデシリアライズ系

C#

最近は設定関連をXMLで記述するのがはやっている模様。大体は、以下の手順で行っているはず。 設定ファイル等をXML形式で保存している 設定ファイル用のDTO相当のクラスを作る DTO相当のクラスに対して、設定ファイルをデシリアライズする というわけで、必…