ASP.NET

log4net サンプル

Global.asax.cs using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Security; using System.Web.SessionState; using log4net; using log4net.Config; namespace Sample { public class Global : Sys…

メッセージリストコントロール

メッセージを手軽に扱うためのカスタムコントロール。 コード MessageList.cs using System; using System.Collections.Generic; using System.ComponentModel; using System.Web.UI; using System.Web.UI.WebControls; namespace Sample.Controls { [Defaul…

CompositeControl

ポイント VS のデザイナ上でも正常に動作させるために、複合コントロールの生成時に内部コントロールの生成も行う デザイナのことを考えなければ CreateChildControls メソッドで生成しても問題無い その場合、内部コントロールにアクセスするプロパティでは…

デザイン時の CompositeControl の挙動

なんかおかしい。 ↓の Items プロパティでは、内部コントロールを返すために EnsureChildControls メソッドを実行しているのだけれど、そうするとデザイン時に正しく処理がされないようで RadioButtonList 内の各項目が表示されない。なぜか、CreateChildCon…

CSS のリンクを動的に追加

HtmlLink cssLink = new HtmlLink(); cssLink.Href = "~/Controls/MyList.css"; cssLink.Attributes["rel"] = "stylesheet"; cssLink.Attributes["type"] = "text/css"; this.Page.Header.Controls.Add(cssLink);

ユーザーコントロールにコレクションのプロパティを持たせる

MyList.ascx <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="MyList.ascx.cs" Inherits="Sample.MyList" %> <fieldset class="MyListControl"> <legend><%= this.Caption %></legend> <ul> <% foreach (var item in this.Items) { %> <li>Item: <%= item.Text %></li> <% } %> </ul> </fieldset> MyList.as…

とりあえず ASP.NET を素早く起動できるようになった

最近 IIS の起動が遅い - 気楽に諸々 の続き 新しい PC が来たのでもう大丈夫と思ったのだが、なんと新しい PC でも同様の現象が (初回から) 発生した。 イベントビューアを見るといくつもエラーが記録されている。(最初の 2 つは PC 起動直後に記録されてい…

最近 IIS の起動が遅い

前も書いたかな。。。 最近 IIS (6.05.1) の起動というかワーカープロセスの起動がかなり遅い。一度起動しちゃえばそれ以降は快適なんだけど。5分以上かかってタイムアウトになることもある。(その場合一度 iisreset コマンド投げないとダメだし。) 前はそん…

あれが解決

これ、プロジェクトのプロパティで「すべてのユーザーにサーバー設定を適用 (プロジェクト ファイルに格納)」のチェックを外しとけば回避できた (^ω^;)

二重送信防止スクリプト

Submit 後に button コントロールと input コントロールと a コントロールを無効化するための、汎用的なスクリプト。 マスターページでインクルードしとくと楽。 イベントハンドラを直接設定しちゃってるので、複数のハンドラの存在を考慮する場合は要改造。…

Web セットアップ プロジェクト使ってインストーラを作る時

展開される Web アプリにソースコードが含まれるのがイヤなので、いつも Web 配置 プロジェクトのプライマリ出力を Web セットアップ プロジェクトに含めていたのだけど…Web アプリケーション プロジェクトのプライマリ出力及びコンテンツ ファイルをWeb セ…

Visual Studio 開発サーバー || IIS Web サーバー

Visual Studio 開発サーバーじゃなく IIS Web サーバーを使用すると、CC サーバーでも仮想ディレクトリ作らなきゃいけない。 やっぱ、普段は Visual Studio 開発サーバーにしといた方がいいのかな。。。

MVP パターンを実装するための基本クラス

IView.cs /// <summary> /// MVP (Model View Presenter) パターンにおける View を表すためのマーカーインターフェイスです。 /// </summary> public interface IView { } Presenter(TView).cs /// <summary> /// MVP (Model View Presenter) パターンにおける Presenter を表す基本抽象</summary>…

ASP.NET と MVC

ASP.NET MVC じゃなくて ASP.NET と MVC について。 ASP.NET は実は一種の MVC だ。 ASP.NET における View は aspx ファイルに記述された「テンプレートビュー」で、Controller はコードビハインドで記述された「ページコントローラ」となる。 ただし、コー…

VS 付属の開発用 Web サーバーは

やっぱ信用ならない。 認証絡みで IIS と違った動作してハマったことがあったので一時期使ってなかったんだけど、最近性懲りもなくまた使ってたら、WCF のストリーミングでハマった orz もちろん、IIS やセルフホストだと正常に動作する。

後編きたー

もう一つのASP.NET 「ASP.NET MVC」を知る(後編) (1/6):CodeZine(コードジン)そろそろ触っとかないとなぁ [関連記事] CodeZine に ASP.NET MVC の記事が挙がってる - 気楽に諸々

ノンコーディングでの挿入をサポートする GridView

こんな感じで、ノンコーディングにできるように、GridView クラスを拡張してみた。TemplateField を使う場合、挿入行には EditItemTemplate が適用される。InsertItemTemplate を用意してやればそっちが適用される (デザイナでは表示されないけど)。 <my:InsertableGridView ID="InsertableGridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="PrimaryKey" DataSourceID="SqlDataSource1"> </my:insertablegridview>

CodeZine に ASP.NET MVC の記事が挙がってる

なおきさんかなぁと思ったらやっぱそうだったw http://codezine.jp/a/article/aid/2748.aspx後でじっくり読もー

見落としてた

ASP.NET の Label コントロールの Text プロパティって、HTML エンコードしてくれないんだった。 エンコードしなきゃいけない時は、HttpUtility.HtmlEncode メソッド 使うなり Literal コントロールを入れ子にするなりしないとなぁ。

一覧に存在しない値を選択できるドロップダウンリスト

SelectedValue プロパティに指定した値が、リスト項目一覧に含まれていない場合、一覧の先頭に項目を補完するドロップダウンリストを作ってみた。 「ブラウザ上で選択できる」という意味ではなく「コード上で指定できる」という意味なので注意。 必要に迫ら…

ページ遷移の管理

public static class Navigator { /// <summary> /// 既定のページに遷移します。 /// </summary> public static void NavigateDefaultAspx() { Navigate("~/Default.aspx"); } /// <summary> /// ほげページに遷移します。 /// </summary> /// <param name="name">ほげ名称。</param> public static void NavigateHogeAspx(str…

MVC ビューを単体テスト

ちょっと勘違いしてたかも。とりあえず全部削除。 今回もフレームワークじゃなくて、パターンの方の話。 # フレームワークなら、ビューも簡単に単体テストできるのかな?例えばこの記事に掲載した後者のコードに含まれる Lend というページクラス。ILendView…

補足

(これの補足)SessionStateAdapter クラスはこの記事のやつ (「ここからが、肝心の〜」以降の話は、あんま関係ない)。 IView インターフェイスは、なんもメンバーを持たない、単なるマーカーインターフェイス。 Controller クラスは今んトコこんなの。 /// <summary> /</summary>…

勘違い

(これの続き)別にデータバインディングは楽勝で使えた。勘違いしてた時のコード public sealed class LendController : Controller<ILendView> { private IList<BookEntity> _lendBookEntities; public void AddBookEntity(string bookId, string localId) { BookEntity bookEntity </bookentity></ilendview>…

MVC とデータバインディング

あ、MVC ってフレームワークのじゃなくて単にパターンを指して。 ビューはイベントをコントローラに通知。 コントローラは表示をビューに指示。 そーすると、バインディングするデータをどこに保持しておくか。 いや、当然コントローラは保持しているけれど…

開発用に使用するサーバー証明書を作る

証明書作成ツール (Makecert.exe)ルート証明書の作成 makecert -n "CN=証明書名" -a "sha1" -r -sr "localmachine" -ss "Root" -sv "秘密キーファイル出力パス" "証明書ファイル出力パス"サーバー証明書の作成 makecert -n "CN=証明書名" -pe -a "sha1" -sky…