初戦はゴーリーいなかったからいいとして、2戦目はひどい。あれじゃ、100戦しても100回負ける。新規加入のゴーリー、スガマタさんはとてもすばらしいゴールテンディングを見せてくれてたよね?後はディフェンスの問題だけなんだから。試合の話はいいとして、今日戸塚でみんなでおしゃべりしてる時に、戸塚に誰がいるのか誰か来るのかを簡単にみんなで共有できるようにするのに、ミチアキさんが「Twitterどう?」って話になったよね。その場にいた数人には説明したけど、なかなか言葉だけだと分かりにくいと思うので、みんなでガンガン使ってみよう!http://twitter.jpネット関連に疎い人も多いと思うけど、スズキ君にはサヨちゃんが上手いこと説明して登録するようにしといてね!S40組にはオレが説明するとして、クラッシャーズ組にはヤマケン選手よろしく!後は、ちょっとづつ広めていきましょう。クローバー組はタカオ?Twitterって何?って言う人も多いと思うけど、検索すればヤマのように説明出てくるから何とかなるよ。頭文字を取って#tsfhとしてみる感じでどうっすか。つぶやきの最後に#tsfhって書いてつぶやくだけ。#tsfhここにアクセスすればいい、戸塚の状況がすべて見られるようになるっていう寸法。戸塚に行く前・着いてから・誰かを誘う時、いろいろつぶやいてみたら便利なんじゃないかね~。大事なことを書き忘れてた。Twitterでたけはらをフォローするときのアカウント名はtakeparaデス。BlogNHibernateじゃなくても、以下のようなTransactionAttributeで。}}適当なDataContextを用意してこれまた適当なAction(適当すぎてすいません)で。Workって言うんですかね~。Exception起こせばロールバックするんだけど...。トランザクションってこのレイヤで意識するものなのかな~。好みや規模に合わせて好きなやり方でどうぞ、ってことで。C#2009年9月12日土曜日runAllManagedModulesForAllRequestsVS2008での開発中のWebサーバーはWebDev.WebServerで、これってsystem.webServerセクションを処理しないで、IIS6と同じ動きになるじゃないっすか。動かない状況が発生してテンヤワンヤ。そもそもIIS6にデプロイするものを作ってて、でもちょっとテストしたくなってIIS7にデプロイしたらイエロースクリーン。原因が分からず泣きそうになった。出てきたエラーは↓これ。設定されているときのみ使用できます。セクションに含まれていることも確認してください。要求を実行中に、ハンドルされていない例外が発生しました。トレースを参照してください。設定されているときのみ使用できます。セクションに含まれていることも確認してください。解決出来そうなtipsが見つからなくて、将来の自分のためにここにコピペしとく。なんでセッションがいきなり動作しないんじゃ!と、お悩みなら、とにかくrunAllManagedModulesForAllRequests属性を確認。IIS7って統合パイプラインだったりするのが魅力なんだけど、こんなことに時間をつぶされるとは...。/>SessionStateModuleがマネージモジュールなおかげでこの属性を外すと、EnableSessionStateを設定しろと全然違うメッセージになって泣ける。7だけど)の場合は、英語っぽいメッセージになったけど、これまた検索で見つかるようにコピペしとこう。要求を実行中に、ハンドルされていない例外が発生しました。トレースを参照してください。enabled.そもそも、この属性をいついじってしまったのかさえ覚えてない...。いけどBubbleShareにアップしてるアルバムをダウンロードしようとしても0バイトのZIPファイルになってて全然ダウンロード出来ない。早くダウンロードしないとそろそろ閉鎖しちゃう。ASP.NET2009年9月6日日曜日HandleErrorの使い方リベンジ前回の投稿の時には全然気にしてなかった問題を最近突っ込まれたので、改めて試して見ました。MVCで例外発生時のハンドリングをどうするのか、というのは前回の投稿に書いてるので読んでもらえれば分かると思います。言うと読んでもらえない気もするので簡単に説明すると、web.configでsystem.web/customErrorsをOnにしておき、ControllerやActionにHandleError属性を指定する。するとException毎に出力する内容を自分で制御出来るのさ!、というものです。ここでポイントになるのはsystem.web/customErrorsでエラーハンドリングをする部分です。Redirectで表示ページに遷移します。StatusCodeに正しい値をセットしたレスポンスを返さないとダメじゃないですか。StatusCodeを返してる。そもそもRedirectいらないだろと。その通りで、リクエストに対してRedirectなんかせず、スパッとステータスを返すのが正しい実装ですよね。すればそういう実装が簡単にできましょうか、が今回の主題です。この主題を実装して正しく動くのはIIS7以降に限定なのでそうじゃない環境の人は「ふ~ん、そっすか」くらいにしか得るものがないかも。ガンバです!まずsystem.web/customErrorsだけだとリダイレクトされてしまうので、これを何とかしたい。IHttpModuleとかで実装するのも手としてはありかもしれないですが、そんなことしなくてもweb.configにsystem.webServer/httpErrorsというのがありまして。このセクションにエラー発生時の挙動を書きます。それだけだとcutomErrorsと何が違うんだと思われても致し方なし。決定的に違うものがありまして、それがresponseMode="ExecuteURL"という属性。これを指定するとただのHTMLレスポンスでもなく、リダイレクトでもなく、指定したURLの実行結果を返してくれるんです。まばゆいくらい素敵です。Schema]詳しくはリファレンスをチェケラッなんだけど、残念なことに日本語になって無くてですね...。ここは一つ「早く日本語にしてください!」とこのエントリを読んだ人はチャックに言いましょう!IISというかインフラは担当が違うと弱音を吐くようなら「担当に伝えてください!」とチャックに言いましょう!だって担当知らないし。THEREこちら(ゴメンねチャック)。話を進める前に前回の状況のスクリーンショットを確認しておきます。左が立ち上げた時の状態。Requestのリンクをクリックした状態。クリックすると拡大するのでステータスを確認してみてください。Requestになってますね。ちなみに開発環境のwebDev.webServerはwebServerセクションを見てくれないので、ローカルのIISにデプロイして確認する必要があります。7上のIIS7.5にデプロイしてます。system.webServer.httpErrorsを設定します。</httpErrors>適当な感じで申し訳ないっす。web.server/customErrorsを変更します。/>前回の設定内容をガッツリ消して、上記のみにしてしまいましょう。これすら消すとHandleError属性が効かなくなってエラーが捕捉出来なくなるので残しておきます。続いて、HandleErrorAttributeクラスを派生させたHttpHandleErrorAttributeクラスを作成します。}}普通のExceptionは無視して、HttpExceptionだけ捕捉します。後は、ControllerにHttpHanderErrorを追加するだけ。ちなみに前回のサンプルソースに付け足してます。実行すると↓こうなります。Exceptionリンクをクリックしたもので、これはcustomErrorsが効いてる結果です。arrowedをクリックした結果で、HttpHandleErrorでViewの定義が無かった(405を用意してないです)時のものです。.NETによるWebアプリ開発の今を徹底討論(1/4):CodeZine最初のページのトップにある写真でプロジェクターの映像を見上げてるのが自分です。これだけ小さい写真だと顔も分からないから恥ずかしくないね!同じ写真内で真ん中あたりにノートパソコンのモニターがちらっと写り混んでるね~。このノートパソコンの画面気になるでしょ~?メモとか取ってるとか思ってるでしょ~?違うんですよ!パワポ(?)で「ここでボケて」とか「もっと詳しく」とか「なんでスーツ着てないの?」とかが用意されてて、しゃべってる途中でチョイチョイ画面をこちらに向けて楽しんでたんだよ!上手いこと写真には写ってないけど一番後ろの席で肉好きの熊さんも同じくカンペを用意してたんだよ!怖え~。