miso_soup3 Blog

主に ASP.NET 関連について書いています。

ASP.NET MVC 半角全角の入力値補正

ASP.NET MVC において、自動的に全角→半角にしたり、 両端のスペースを取り除いてくれるようにしよう!という話です。 アプローチ プロパティ毎にモデルバインダーを切り替えるようにします。 また、モデルは、単純な型でなく、複合型を対象とします。 ざっ…

SQL Server Data Tools で単体テスト

DB の Unit Test も出来る!SQL Server Data Tools December 2012 を公開 SQL Server Data Tools の最新バージョンが 2012 / 12 にリリースされていました。 この最新バージョンでは、Visual Studio 2010 Professional 以上で単体テストができます。というこ…

csHtml ファイルを使って RazorEngine

試してみましたのでメモです。 実行 準備 NuGet で、RazorEngine をインストール後、 テンプレートファイル MessageTemplate.csHtml と、モデル用の MessageModel クラスを用意します。・MessageModel クラス public class MessageModel { public string Nam…

Web API のトレース機能を Azure で

前回、Web API のトレース機能がデフォルトで追加されたことについて書きました。 Web API のヘルプページとトレース機能がデフォルトへ このトレース機能は、Azure に発行したとしても、問題の発見に役に立つことができます。Azure に発行して、WEB API の…

Web API のヘルプページとトレース機能がデフォルトへ

ASP.NET and Web Tools 2012.2 がリリースされました。ASP.NET Web API では、3つの機能―― 1.OData のサポート、2.ヘルプページ生成機能、3.トレース機能 が追加されています。今回はヘルプページとトレース機能、加えて、 Azure で発行した時にトレ…

ASP.NET WEB API QueryStringを使った検索

QueryString でたくさんの検索条件を指定する API の例です。 パラメータを指定しない場合は、初期値を設定したいものとします。 api/persons/? canCook=true & isHungry=false & Name=taro &..... という URL で検索したい場合もあれば、 api/persons/?canC…

ASP.NET WEB API モデルバインド その1 値の取得先

ASP.NET WEB API モデルバインドについてです。 モデルバインディングとは モデルバインディングとは、ApiController のアクションメソッドの引数に定義した パラメータの型(モデル)の値を、リクエストから生成し、メソッドに渡すことです。 ASP.NET MVC …

ADO.NET Entity Data Model でエラー

SQL Server 2005 と ADO.NET Entity Data Model を使った時に、 型 datetime2 を使っていないのに、 「使用されている SQL Server のバージョンでは、データ型 'datetime2' がサポートされていません。」 というエラーがでる件についてメモ。edmx ファイルを…

Hokuriku.NET vol.11, ASP.NET WEB API ヘルプページ補足

2013/01/26(日)に富山で開催された Hokuriku.NET vol.11 に参加してきました。 全国各地、遠いところから足を運んで下さった皆様、 素晴らしいセッションをして頂いたスピーカーの方々、 そしてスタッフの皆様、本当にありがとうございました。ぶりしゃぶも…

ASP.NET WEB API エラーの対処について

ASP.NET WEB API には、エラー用フィルター属性のインターフェイス、 System.Web.Http.Filters.IExceptionFilter が用意されています。これを使えば、(MVC と似たように)アクションメソッド内でエラーが起きた時に、 独自の処理を挟むことができます。 今日…

ASP.NET WEB API ルーティングについていろいろ

ルーティング基本 WEB API において、アクションメソッドへのマッピングの基本は、 HTTP メソッド名から始まるメソッドへマッピングされることです。HTTP POST だったら、POST..から始まるメソッドへ、 HTTP GET だったら、GET...から始まるメソッドへマッピ…

API と MVC でモデル検証の挙動が少し違う

モデル検証の時に入るキーが、WEB API と、MVC と違っていたのでメモです。下のように、とあるモデルを引数としたアクションメソッドを定義し、 そのモデルに検証属性を付けます。 // アクションメソッド [HttpPost] public ActionResult Register(RegisterM…

ASP.NET WEB API でのステータスコードについて

あけましておめでとうございました。今年もよろしくお願いいたします。 〜ASP.NET WEB API はじめました〜 ASP.NET WEB API にて、 どういった時にどんなステータスコードを返すのか、返すべきなのか わからなかったので簡単に調べました。 ASP.NET WEB API …

knockout.js と SignalR でチャット作成

先日 knockout.js を使ったリストのバインディングについて書きました。 今日は、それに SignalR の要素を追加して、簡単なチャットアプリの作成について書きます。名前とテキストの入力欄があり、投稿ボタンを押すと、 リストへ表示されます。SignalR を使…

knockout.js リストのバインディング

knockout.js を使って ajax 通信を使ったリストのバインディングを行う方法です。 既にいろんなところに情報がありますが、覚書きとして・・ ダウンロード 公式の knockout.js からDLまたは、nuget で Install-Package knockoutjs Html とあるボタンが押され…

ページインスペクター追加機能(リリース候補)

12/14(金)に公開された ASP.NET and Web Tools 2012.2 RC のアップデート項目の中に、ページインスペクターの追加機能 が2つあったので、それについて書きます。他のアップデート項目である、新しい MVC テンプレートや、 SignalR、WEB API、WEB の発行、な…

Visual Studio Express 2012 for Web ページインスペクター

Visual Studio Advent Calendar 2012 の 12 日目の記事です。 前日の記事は、ishisaka さんのPython Tools for Visual StudioでDjangoのアプリケーションを作る です。私からは、まだ経験は浅いですが、Visual Studio Express 2012 for Web のページインスペ…

ASP.NET MVC コア拡張部

One ASP.NET Advent Calendar 2012 の 9 日の記事です。 前日の 8 日は ASP.NET MVC と WF4 を一緒に使う際に気をつけるたった一つのこと 後日は 10 日は WebFormっぽいコントロールベスト3こちらになります。ASP.NET MVC は拡張性に優れており、あらゆると…

Tips 単体テスト可読性UP方法

ASP.NET Fall 2012 Update が気になるところですが… 単体テストについてです。 可読性UP! expect(予想値)と、actual (結果値) を明確にして書くと、 テストがわかりやすくなるとよく言われますが、もう一歩進んで、 expect(予想値) actual (結果値)…

ValidationAttribute の検証メソッド内で、外部コンポーネントを利用する

ASP.NET MVC の、カスタム検証属性クラス内で、 IRepository 等の外部コンポーネントを利用する方法です。これを上手く使えば、データベースを使った検証でも、 Controller 以降に書いたりせずとも、モデルバインダ対象のプロパティに属性をつけるだけで 実…

Hokuriku.NET vol.10 に参加してきました 感想まとめ

大変に大変に遅くなりましたが、Hokuriku.NET vol.10 のセッションの 感想を書きました。下記、セッション名になっていますが、リンク先は感想の記事です。 Windows 8アプリを作ろう〜 Metroスタイルアプリ入門〜 エバンジェリスト養成講座 〜北陸マイクロソ…

Hokuriku.NET vol.10 に参加してきました 4

Hokuriku.NET vol.10 セッション4、「Featuring Project Silk & Liike: 楽しい “モダン” Web 開発のちょっとディープなお話」の感想です。主に JavaScript のモジュール化について書きます。 スライドが公開されています Featuring Project Silk & Liike: …

Hokuriku.NET vol.10 に参加してきました 3

Hokuriku.NET vol.10 セッション3、「ASP .NET MVC で Windows Azure の Spring Release 機能を余すところなく使ってみる!」の感想です。 スライドが公開されています ASP .NET MVC で Windows Azure の Spring Release 機能を余すところなく使ってみる! …

Hokuriku.NET vol.10 に参加してきました 2

Hokuriku.NET vol.10 セッション2、「エバンジェリスト養成講座 〜北陸マイクロソフトコミュニティ限定版〜」の感想です。初めてお聞きしたのですが、衝撃的なセッションでした。 印象的だったこと いくつものプレゼン こんなプレゼン方法があるよ、と1つ…

2012-10-03 Hokuriku.NET vol.10 に参加してきました 1

2012/9/29(土)に福井で開催された勉強会、Hokuriku.NET vol.10 のレポートです。 どのセッションも必ず笑いがおきていたのが印象的でした。 今回からはレポートを書こう!と決めていたので まずは1つめのセッションから、感想を書かせて頂きます。 Windows …

JsonResult の Data をテストする時にエラー

Controllerのアクションメソッドにて、 JsonResultのDataを匿名型オブジェクトで設定した時の、 戻り値のテスト方法です。 ある条件下でエラーがでるので、その対処方法を書きます。アクションメソッド内の実装 return Json(new { pesronName = "山田さん", …

ActionLinkは、現在のルートデータを参照してくれる

/Person/Details/1 で表示されるViewに、編集リンクを追加したい時は、 スキャフォールディングにもある通り以下のように書くことができます。 @Html.ActionLink("編集へ", "Edit", new { personId = Model.Id }) が、ルーティングを設定すると @Html.Action…

Universal Providers、WebConfigでのMembership設定メモ

SimpleMembership, Membership Providers, Universal Providers and the new ASP.NET 4.5 Web Forms and ASP.NET MVC 4 templatesSimpleMembershipを使った時、往来通りWebConfigでMembershipを設定する方法。 (MVC4 Basicテンプレート以上では、既に設定さ…

エラーが起きたらどうなるか? Application_Error()と、HandleErrorAttribute

MVCでカスタムエラーページを実装しようとした時、 調べると以下の2つのコードに到着すると思います。 Web.Config にて <customErrors mode="On" defaultRedirect="~/Error/ErrorDayo" > </customErrors> Glogal.asax.cs にて filters.Add(new HandleErrorAttribute()); // (またはControllerクラスにて [HandleError]) これらの実装は…

Project Silk と Liike のビルドと実行

今週末開催される Hokuriku.NET vol.10 の井上章さんのセッションでは 2つのプロジェクトが登場します。 マイクロソフトのpatterns&practicesチームからリリースされている、SilkとLiikeです。どちらもサンプルコードがあり、DLして実際にアプリを触ること…