ASP.NET
よく会員登録などのフォームにある、会員規約に同意しますというチェックボックスってありますよね。ASP.NET MVC でチェックされていない時にエラーを表示する場合、Required 属性を使えば対応出来そうだと考える人は多いと思います。 public class FormMode…
ASP.NET SignalR のデモでよく見るような、ドラッグドロップでオブジェクトを動かして、それを全クライアントに配信するようなアプリケーションだと、そのまま実装するとサーバとクライアント間で数 ms 間隔で通信が行われてしまいます。それは非常に効率が…
実際に ASP.NET でアプリケーションを開発していて、それを公開環境へデプロイする時には Web.config に書かれている接続文字列や設定などを、開発環境のものから変更する必要が出てくると思います。最近の Visual Studio では Web.config の内容を XSLT で…
NuGet Gallery | SwissKnife.Mvc 0.0.2もうちょっと説明とかしっかり書けという感が満載なんですが、とりあえずいろいろと実装したかなと思ったので公開してみました。リファレンスなんて立派なものはまだないので、このエントリに基本的な機能を書いておき…
ASP.NET MVC 4 アプリケーションのスマートフォン対応は、理想的には ASP.NET MVC 4 というか Web Pages 2 で追加された Display Modes だけで解決できればいいんですが、今回はどうしてもアクションを分けたくなりました。しかし、他のページはビューだけ切…
id:Waquesseix この記事を読んで早速vary: user-agentを追加しようと思ったら、なんかバグでvaryが変えられない(圧縮をオフにしない限り)みたいでがっくりしました。。。 ASP.NET でカスタム HTTP ヘッダを追加する方法 - しばやん雑記 そういえば、ASP.NET …
機密情報を含むJSONには X-Content-Type-Options: nosniff をつけるべき - 葉っぱ日記この記事を見て、そういえば ASP.NET でカスタム HTTP ヘッダを追加する方法を知らないなと思ったので、Web.config だけで解決できないか調べてみました。結論から書くと…
ASP.NET MVC 4 のブラウザオーバーライドを JavaScript から設定する - しばやん雑記 で ASP.NET MVC 4 というか Web Pages 2 のブラウザオーバーライド機能はクッキーを使って実装されていると紹介しましたが、実はこの User-Agent を保存する部分は開発者…
Nancy - Lightweight Web Framework for .net NancyFx (Custodians of the Super-Duper-Happy-Path) · GitHub恥ずかしながら、今まで Nancy というものを知りませんでした。知ったきっかけは Scott Hanselman 氏のブログ記事です。One ASP.NET: Nancy.Templa…
ASP.NET MVC のスキャフォールディングを使うと、以下のように Entity Framework の DbContext をコントローラのフィールドに持つコードが生成されます。 public class CustomerController : Controller { private SampleDbContext db = new SampleDbContext…
更新内容を見ると ASP.NET MVC と Web API への対応を含んでるとありますが、これは何を指すのかちょっと不明ですね。 NuGet 2.5、Unity DI 3 が公開されていました - しばやん雑記 前回ではこんなふうに書いておきましたが Unity Developer's Guide を読む…
SignalR 1.1 のベータが公開されて、スケールアウトプロバイダもさらに新しくなりましたね。内容に関しては開発者の Devid Fowler 氏のブログが最高にわかりやすいです。SignalR 1.1 beta - Unhandled Exceptionちょっと指定方法が変わったのと、エラー処理…
SignalR 1.1 beta is out! https://t.co/IqLnRMf1Vp including new scale out providers. See the release notes https://t.co/XGtK9pHgIQ— David Fowler (@davidfowl) April 11, 2013という訳で、SignalR 1.1 のベータが公開されたようです。GitHub のマイ…
Web.config から AppSettings クラスを作成する T4 を書いてみた - しばやん雑記 の強化版を NuGet で公開しました。NuGet Gallery | SwissKnife.T4.AppSettings 0.0.5例えば、ASP.NET MVC 4 のアップデートで追加された Facebook App のテンプレートにイン…
ASP.NET で開発していて毎回思うのが、設定を Web.config に持たせた時のコードからの扱いにくさです。例えば以下のように appSettings セクションに設定を追加します。 <appSettings> <add key="Foo" value="123" /> <add key="Bar" value="456" /> <add key="Baz" value="789" /> </appSettings> 実際にコードからこの設定を読み込もうとすると、以下のように冗長なコードを書く…
先日、盛大に罠にはまったので MachineKey について改めてまとめておきます。そもそも MachineKey とは何ぞやと言う話ですが、フォーム認証やビューステートでの検証と暗号化で使われるキーです。ASP.NET のランタイムが生成する認証用のクッキーやビュース…
SignalR は基本的に非同期で通信が行われるので、クライアント側ではブロッキングせずに通信を行うことが出来ますが、サーバ側の実装となるとまた別の話になります。ASP.NET MVC などと同じように Hub のメソッド内でファイル、ネットワーク I/O などの時間…
全く気が付かなかったんですが、ASP.NET 4.5 では MachineKey を使った暗号化の処理が拡張されていて、それによってフォーム認証のチケットの互換性が無くなっていました。最初は原因が全く分からなかったので色々と試したのですが、どうやら ASP.NET 4.5 向…
ASP.NET SignalR は IIS 8 と .NET Framework 4.5 が必要だと思っている人は多いみたいですが、実際には IIS 7.5 と .NET Framework 4 の組み合わせでも WebSocket が使えないだけで動作自体は全く問題ありません。今のところ IIS 8 と .NET Framework 4.5 …
そろそろ作成したヘルパー類をちゃんと例外処理も実装して GitHub で公開しようかなぁとか思ってます。 ASP.NET MVC でチェックボックス周りを良い感じに扱う - しばやん雑記 以前にこう書いておきながら何もやってなかったんですが、流石に自分で昔ブログに…
ASP.NET MVC には OutputCache 属性が用意されているので、多少は Cache-Control ヘッダを弄ることが出来ます。 [OutputCache(Location = OutputCacheLocation.None, NoStore = true)] public ActionResult Index() { return View(); } しかし、OutputCache …
ASP.NET MVC のモデルバインダは List や配列は添え字がシーケンシャルであれば、複合型でも問題なくバインド出来るのは知っていましたが、今日まで Dictionary のバインドに対応してることを知りませんでした…。これは恥ずかしい。ASP.NET Wire Format for …
SignalR のサンプルアプリケーションってボタンをクリックしたり、チャットでメッセージやり取りするものが多いですね。実際に試してみると結構面白いんですが、本当に複数人が繋がっているのか分からないので、いまいち実感がわかなかったりします。自分以…
ASP.NET MVC に標準で用意されている HTML ヘルパーはオーバーロードが非常に多いです。簡単な例を挙げると Html.BeginForm を使って GET として実行されるフォームを作成する場合は、以下のようにオーバーロードメソッドを使って書けますね。 @using (Html.…
C# や ASP.NET は新しいバージョンほど使われない - しばやん雑記 を書いていて、ASP.NET で動いてるサービスを見たことが無いと思ってる人って結構多いんだろうなぁと思いました。ということで、実際のシェアがどうなってるのかを調べてみようと思います。…
微妙に釣りタイトルです。書こうと思ったきっかけはこちらの記事です。 前職ではC#/ASP.NETをよく書いていた。 キャリア的には5年ぐらいだったけど、悲しいことにずっとC# 2.0止まりだった。 型推論とかLINQとかは結局実務では使わずじまいだった。 Java/C# …
NuGet Gallery | Microsoft ASP.NET SignalR 2.0.0知らぬ間に ASP.NET SignalR 1.0.1 が出ていました。リリースノートを見るとバージョン番号が示す通り、このバージョンではバグ修正しか行われていないようです。Page not found · GitHub恐らく、今月中には…
ASP.NET MVC で Html.DropDownListFor を使った場合、どうやって検証を行っていますか?不正な値が選択されないという想定で作る人もいると思いますが、大抵の場合はブラウザの開発者ツールで値を改ざんされて送られる可能性を考慮する必要があります。困っ…
ASP.NET MVC の場合は Razor で書かれたビューは System.Web.Mvc.WebViewPage クラスを基本クラスとしてコンパイルされます。例えば以下のようなシンプルな Razor ビューがあるとします。 @{ ViewBag.Title = "Index"; } <h2>Index</h2> これをコンパイラが C# コード…
ASP.NET MVC の HTML ヘルパーには CheckBox/CheckBoxFor メソッドが用意されていますが、これを使って実現できるのは bool でのオンオフが必要なチェックボックスだけです。しかし、世の中には「当てはまる項目にチェックを入れてください」というようなチ…