<?xml version="1.0" encoding="UTF-8" ?> <rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>.NET Developer Empire</title><link>http://blogs.wankuma.com/tatsumihr/</link><description>帝国の逆襲</description><managingEditor>tatsumihr(honekichi19@hotmail.com)</managingEditor><dc:language>ja-JP</dc:language><generator>.Text Version 0.95.2004.102</generator><item><dc:creator>tatsumihr(honekichi19@hotmail.com)</dc:creator><title>今日はありがとうございました！</title><link>http://blogs.wankuma.com/tatsumihr/archive/2008/10/19/159164.aspx</link><pubDate>Sun, 19 Oct 2008 01:23:00 GMT</pubDate><guid>http://blogs.wankuma.com/tatsumihr/archive/2008/10/19/159164.aspx</guid><wfw:comment>http://blogs.wankuma.com/tatsumihr/comments/159164.aspx</wfw:comment><comments>http://blogs.wankuma.com/tatsumihr/archive/2008/10/19/159164.aspx#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://blogs.wankuma.com/tatsumihr/comments/commentRss/159164.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/tatsumihr/services/trackbacks/159164.aspx</trackback:ping><description>tatsumihrです。&lt;BR&gt;
今日の勉強会はありがとうございました。&lt;BR&gt;
スピーカーにもかかわらず勉強会参加登録をしていなかったという大失態を犯しましたが、&lt;BR&gt;
みなさんが暖かく受け入れてくださったのでとても嬉しかったです。&lt;BR&gt;
&lt;BR&gt;
今後も都合が許せば参加しようと思いますので、&lt;BR&gt;
よろしくお願いいたします。&lt;BR&gt;
&lt;BR&gt;
今日、発表で使ったデモはSourceForge.jpに公開しているチュートリアルのサンプルAPです。&lt;BR&gt;
チュートリアルには基本的なTERASOLUNAの使い方をかなり詳細に書いていますので、&lt;BR&gt;
是非、ご覧ください。&lt;BR&gt;
&lt;BR&gt;
さらにTERASOLUNAフレームワーク自体のソースコードも&lt;BR&gt;
Apache License, Version 2.0 で公開しています。&lt;BR&gt;
業務システム開発や勉強などで活用してください。&lt;BR&gt;
そして、もし怪しいところがあったらこっそりご連絡くださいｗ&lt;BR&gt;
もう一度言います。&lt;BR&gt;
『こっそり』ご連絡ください！&lt;BR&gt;
&lt;BR&gt;
明日の野球もがんばります。。。&lt;BR&gt;
今日は本当にありがとうございました。&lt;BR&gt;
&lt;BR&gt;
-----&lt;BR&gt;
◆TERASOLUNAフレームワーク&lt;BR&gt;
&lt;A href="http://sourceforge.jp/projects/terasoluna/"&gt;http://sourceforge.jp/projects/terasoluna/&lt;/A&gt;&lt;BR&gt;
&lt;BR&gt;
◆@IT&lt;BR&gt;
TERASOLUNA for .NETフレームワーク概説&lt;BR&gt;
「.NET開発でもオープンソース・フレームワークを使おう」&lt;BR&gt;
&lt;A href="http://www.atmarkit.co.jp/fdotnet/terasoluna/terasoluna01/terasoluna01_01.html"&gt;
http://www.atmarkit.co.jp/fdotnet/terasoluna/terasoluna01/terasoluna01_01.html
&lt;/A&gt;&lt;BR&gt;
-----&lt;BR&gt;
&lt;img src ="http://blogs.wankuma.com/tatsumihr/aggbug/159164.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tatsumihr(honekichi19@hotmail.com)</dc:creator><title>TERASOLUNA Server/Clinet Framework for .NET</title><link>http://blogs.wankuma.com/tatsumihr/archive/2008/07/15/148895.aspx</link><pubDate>Tue, 15 Jul 2008 08:06:00 GMT</pubDate><guid>http://blogs.wankuma.com/tatsumihr/archive/2008/07/15/148895.aspx</guid><wfw:comment>http://blogs.wankuma.com/tatsumihr/comments/148895.aspx</wfw:comment><comments>http://blogs.wankuma.com/tatsumihr/archive/2008/07/15/148895.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.wankuma.com/tatsumihr/comments/commentRss/148895.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/tatsumihr/services/trackbacks/148895.aspx</trackback:ping><description>&lt;P&gt;
●NTTデータが社内で利用中の.NET向けフレームワークをオープンソースとして無償公開&lt;BR&gt;
&lt;/P&gt;
&lt;P&gt;
http://itpro.nikkeibp.co.jp/article/NEWS/20080714/310757/
&lt;/P&gt;
&lt;P&gt;
やっとリリースしました。
&lt;/P&gt;
&lt;P&gt;
◆Client
&lt;/P&gt;
&lt;P&gt;
Windowsアプリケーションのオープンソース フレームワークはあまりないので、
なかなか面白いのではないかと考えています。
&lt;/P&gt;
&lt;P&gt;
特に、サーバ側としてTERASOLUNA Server Framework for Java(Rich版)との連携を考えて設計しているため、
サーバJava(Springベース)、クライアント.NETという組み合わせでの開発もできます。
大規模システムでサーバ側をJavaアーキテクチャで統一したいが、
クライアント側はどうしてもデバイス操作が必要なため、.NETで開発したいという場合に、
よくこの組み合わせで開発されます。
&lt;/P&gt;
&lt;P&gt;
Windowsフォームが中心でWPFには対応していませんが、拡張すれば使えると思います。
&lt;/P&gt;
&lt;P&gt;
◆Server
&lt;/P&gt;
&lt;P&gt;
ASP.NETの機能ってかなり豊富で、実はJavaほどフレームワークって必要ないのではないか？と考えています。
規約さえあれば、そこそこのものは作れてしまいそう。
&lt;/P&gt;
&lt;P&gt;
でも、ASP.NETのプレゼンテーションレイヤ周りの機能って結構気が利かないところもあって、
分散開発には向かないところも多々あります。
例えば、　Response.Redirect("UI/Sample.aspx");　とか、リダイレクト先の指定でURLを直接書きますが、
これだとリダイレクト先の変更にリビルドが必要になってしまうので、イケていません。
それを　WebUtils.Transit(uiId);　という形で、ページ設定ファイルに切り出した画面IDでリダイレクトできるようにしています。
ページ設定ファイルには画面のトークンチェックの設定も一緒にできるので、
少ない設定ファイルで標準のASP.NETではない機能を簡単に追加できます。
&lt;/P&gt;
&lt;P&gt;
あとは、スマートクライアント開発でマルチパート形式のデータの受け口があったりもします。
XML通信でいいなら、.NET標準のWebサービスやWCFを使うのがいいのかな？とも思いますが。
&lt;/P&gt;&lt;img src ="http://blogs.wankuma.com/tatsumihr/aggbug/148895.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tatsumihr(honekichi19@hotmail.com)</dc:creator><title>セッション管理のお話</title><link>http://blogs.wankuma.com/tatsumihr/archive/2007/09/27/98185.aspx</link><pubDate>Thu, 27 Sep 2007 09:23:00 GMT</pubDate><guid>http://blogs.wankuma.com/tatsumihr/archive/2007/09/27/98185.aspx</guid><wfw:comment>http://blogs.wankuma.com/tatsumihr/comments/98185.aspx</wfw:comment><comments>http://blogs.wankuma.com/tatsumihr/archive/2007/09/27/98185.aspx#Feedback</comments><slash:comments>12</slash:comments><wfw:commentRss>http://blogs.wankuma.com/tatsumihr/comments/commentRss/98185.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/tatsumihr/services/trackbacks/98185.aspx</trackback:ping><description>&lt;P&gt;セッションって便利で、結構何でも入れてしまいがちです。「セッションに何でも入れてしまうなんてとんでもない！！」と思う人は、しっかり考えてセッション使ってくれるので問題ないですが、中にはそういう考えを全く持っていない人もいる訳です。&lt;/P&gt;
&lt;P&gt;また、セッションに値を格納したら、しかるべきタイミングで不要なものは削除しなければなりません。ログアウト時などに一括削除するのであれば Session.Clear() で良いのですが、おそらくそうでない場合の方が多いでしょう。通常は設計時にセッションに格納する値を決めておいて、削除するタイミングも決めておくと思います。ほとんどの場合はこれで問題ないはずです。しかし、セッションに何でも値を詰め込んでしまう人が設計書を無視して実装してしまった場合、どこでどのタイミングでセッションを削除すれば良いのか分からなくなってしまいます。不要な項目がセッションの中をウヨウヨしてしまいます！&lt;/P&gt;
&lt;P&gt;さて困った。。。&lt;/P&gt;
&lt;P&gt;良い意味で開発者を信頼しないで、セッションを管理できるような良い仕組みってないですかねぇ。。。&lt;/P&gt;&lt;img src ="http://blogs.wankuma.com/tatsumihr/aggbug/98185.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tatsumihr(honekichi19@hotmail.com)</dc:creator><title>CloseとDisposeの違いって？ その２　～実装を覗いてみよう～</title><link>http://blogs.wankuma.com/tatsumihr/archive/2007/08/11/89903.aspx</link><pubDate>Sat, 11 Aug 2007 10:03:00 GMT</pubDate><guid>http://blogs.wankuma.com/tatsumihr/archive/2007/08/11/89903.aspx</guid><wfw:comment>http://blogs.wankuma.com/tatsumihr/comments/89903.aspx</wfw:comment><comments>http://blogs.wankuma.com/tatsumihr/archive/2007/08/11/89903.aspx#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://blogs.wankuma.com/tatsumihr/comments/commentRss/89903.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/tatsumihr/services/trackbacks/89903.aspx</trackback:ping><description>&lt;P&gt;&lt;A id=_dda4e2ec4741caf3_HomePageDays_DaysList__ctl0_DayItem_DayList__ctl0_TitleUrl href="/tatsumihr/archive/2007/08/07/89289.aspx"&gt;CloseとDisposeの違いって？&lt;/A&gt; でCloseは再オープン可能、Disposeは再オープン不可能という話になりました。&lt;/P&gt;
&lt;P&gt;じゃあ、.NET Frameworkの実装ではどうなってるの？という疑問に当然たどり着くわけです。「&lt;FONT color=#ff0000&gt;プログラムは仕様通りに動くのではなく、実装通りに動く！&lt;/FONT&gt;」という名言もあります。調べてみたのはStreamとConnection。本当かどうかは分からないので、あまり信じすぎないでね。&lt;/P&gt;
&lt;P&gt;
&lt;H3&gt;ストリーム&lt;/H3&gt;
&lt;P&gt;&lt;/P&gt;&lt;PRE class=wiki&gt;public void Dispose() &lt;BR&gt;{ &lt;BR&gt;　　// Close()を呼び出す &lt;BR&gt;}&lt;BR&gt;
public virtual void Close() &lt;BR&gt;{ &lt;BR&gt;　　// 実際にストリームを閉じる処理をする&lt;BR&gt;}&lt;/PRE&gt;
&lt;P&gt;ストリームでは、DisposeメソッドはCloseメソッドを内部で呼び出しているようです。この場合、一度Closeしてしまったら再Openはできません。&lt;/P&gt;
&lt;P&gt;では、Connectionはどうでしょうか？要約すると、多分こんな感じ。嘘だったらごめんなさい。&lt;/P&gt;
&lt;P&gt;
&lt;H3&gt;コネクション&lt;/H3&gt;
&lt;P&gt;&lt;/P&gt;&lt;PRE class=wiki&gt;public void Dispose() &lt;BR&gt;{ &lt;BR&gt;　　// コネクションを閉じる&lt;BR&gt;}&lt;BR&gt;
public virtual void Close() &lt;BR&gt;{ &lt;BR&gt;　　// 現在持っているDbConnectionをクラス内部のコネクションプールにキャッシュしている感じ？ &lt;BR&gt;}&lt;/PRE&gt;
&lt;P&gt;DisposeするとDbConnectionにGCがかかりそうな予感。Closeの場合は、クラスの内部的にキャッシュして持っているだけなイメージ。つまり再オープン可能。&lt;/P&gt;
&lt;P&gt;こういう風に実装が違うのって、扱う対象の性質に合わせているのかな？FileStreamだと閉じた後にしっかりリリースしてくれないと、他のところから書き込みとか行った場合に不整合が生じてしまいそう。DbConnectionだと、コネクション作るのに時間かかるから、毎回完全にリリースしてしまうと効率が悪そう。個人的に大体こんな結論になりました。&lt;/P&gt;&lt;img src ="http://blogs.wankuma.com/tatsumihr/aggbug/89903.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tatsumihr(honekichi19@hotmail.com)</dc:creator><title>CloseとDisposeの違いって？</title><link>http://blogs.wankuma.com/tatsumihr/archive/2007/08/07/89289.aspx</link><pubDate>Tue, 07 Aug 2007 22:35:00 GMT</pubDate><guid>http://blogs.wankuma.com/tatsumihr/archive/2007/08/07/89289.aspx</guid><wfw:comment>http://blogs.wankuma.com/tatsumihr/comments/89289.aspx</wfw:comment><comments>http://blogs.wankuma.com/tatsumihr/archive/2007/08/07/89289.aspx#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://blogs.wankuma.com/tatsumihr/comments/commentRss/89289.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/tatsumihr/services/trackbacks/89289.aspx</trackback:ping><description>&lt;H3&gt;Close&lt;/H3&gt;&lt;PRE class=wiki&gt;一般に、Closeは、オブジェクトをクローズしたあとも再オープン、再利用できるときに使う。ファイルのように一般にクローズされるとみなされているオブジェクトに対してもCloseを使う。&lt;/PRE&gt;
&lt;H3&gt;Dispose&lt;/H3&gt;&lt;PRE class=wiki&gt;捨てたあと再利用できないオブジェクトで使う。たとえば、System.Drawing.Brushオブジェクトを削除するには、そのDisposeメソッドを呼び出す。捨てたあとのBrushオブジェクトは利用できず、オブジェクトを操作するメソッドを呼び出すと、例外が発生する。ほかのBrushが必要なら、新しいBrushオブジェクトを構築しなければならない。&lt;/PRE&gt;
&lt;P&gt;これは「&lt;A href="http://www.microsoft.com/japan/msdn/net/mag00/GCI.aspx"&gt;ガベージコレクション入門: Microsoft .NET Framework の自動メモリ管理 Part I&lt;/A&gt;」で書いてあった事です。&lt;/P&gt;
&lt;P&gt;どなたかのblogでここへのリンク先が書いてあったのですが、普段無意識に使っているものでもあらためて比べてみると、「ああ、なるほど」と思わず納得してしまったことでした。&lt;/P&gt;
&lt;P&gt;それにしても、&lt;STRONG&gt;「一般にクローズされるとみなされている」&lt;/STRONG&gt;という定義はいったい何なのだろうか？？？&lt;/P&gt;&lt;img src ="http://blogs.wankuma.com/tatsumihr/aggbug/89289.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tatsumihr(honekichi19@hotmail.com)</dc:creator><title>えムナウさんからの宿題</title><link>http://blogs.wankuma.com/tatsumihr/archive/2007/08/05/88908.aspx</link><pubDate>Sun, 05 Aug 2007 20:08:00 GMT</pubDate><guid>http://blogs.wankuma.com/tatsumihr/archive/2007/08/05/88908.aspx</guid><wfw:comment>http://blogs.wankuma.com/tatsumihr/comments/88908.aspx</wfw:comment><comments>http://blogs.wankuma.com/tatsumihr/archive/2007/08/05/88908.aspx#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://blogs.wankuma.com/tatsumihr/comments/commentRss/88908.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/tatsumihr/services/trackbacks/88908.aspx</trackback:ping><description>&lt;P&gt;先ほど書いたValidation Application Blockの記事で、えムナウさんから型付データセットのRewardPoints（System.Int32）に文字列を入れたら入力値検証前に落ちるのではないか？とのご指摘を受けました。&lt;/P&gt;
&lt;P&gt;&lt;A id=viewpost.ascx_TitleUrl HREF="/tatsumihr/articles/88883.aspx"&gt;Validation Application Block を使おう！！　～構成ファイル編～ &lt;/A&gt;&lt;/P&gt;
&lt;P&gt;確かに、おっしゃる通りです。&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#ff0000&gt;そこで対応策。&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;RewardPoints の System.Int32 を System.String 型にしてしまい、カスタムValidatorを作って対応します。カスタムValidatorでは、Stringをintに変換し、変換したintに対して検証をかけるという感じです。実装例は以下の通りです。&lt;/P&gt;
&lt;P&gt;
&lt;HR id=null&gt;

&lt;P&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt; System;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt; System.Collections.Generic;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt; System.Text;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt; Microsoft.Practices.EnterpriseLibrary.Validation.Validators;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt; Microsoft.Practices.EnterpriseLibrary.Validation;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt; Microsoft.Practices.EnterpriseLibrary.Common.Configuration;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt; Microsoft.Practices.EnterpriseLibrary.Validation.Configuration;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt; System.Collections.Specialized;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;namespace&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt; ValidationABSample.CustomValidator&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;[&lt;SPAN style="COLOR: teal"&gt;ConfigurationElementType&lt;/SPAN&gt;(&lt;SPAN style="COLOR: blue"&gt;typeof&lt;/SPAN&gt;(&lt;SPAN style="COLOR: teal"&gt;CustomValidatorData&lt;/SPAN&gt;))]&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;IntRangeValidator&lt;/SPAN&gt; : &lt;SPAN style="COLOR: teal"&gt;Validator&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; _lowerBound = 0;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;RangeBoundaryType&lt;/SPAN&gt; _lowerBoundType = &lt;SPAN style="COLOR: teal"&gt;RangeBoundaryType&lt;/SPAN&gt;.Ignore;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; _upperBound = 0;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;RangeBoundaryType&lt;/SPAN&gt; _upperBoundType = &lt;SPAN style="COLOR: teal"&gt;RangeBoundaryType&lt;/SPAN&gt;.Ignore;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// コンストラクタ&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; IntRangeValidator(&lt;SPAN style="COLOR: teal"&gt;NameValueCollection&lt;/SPAN&gt; attributes)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;: &lt;SPAN style="COLOR: blue"&gt;base&lt;/SPAN&gt;(&lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;, &lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;_lowerBound = &lt;SPAN style="COLOR: teal"&gt;Int32&lt;/SPAN&gt;.Parse(attributes.Get(&lt;SPAN style="COLOR: maroon"&gt;"lowerBound"&lt;/SPAN&gt;));&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;_upperBound = &lt;SPAN style="COLOR: teal"&gt;Int32&lt;/SPAN&gt;.Parse(attributes.Get(&lt;SPAN style="COLOR: maroon"&gt;"upperBound"&lt;/SPAN&gt;));&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (attributes.Get(&lt;SPAN style="COLOR: maroon"&gt;"lowerBoundType"&lt;/SPAN&gt;).Equals(&lt;SPAN style="COLOR: maroon"&gt;"Exclusive"&lt;/SPAN&gt;))&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;_lowerBoundType = &lt;SPAN style="COLOR: teal"&gt;RangeBoundaryType&lt;/SPAN&gt;.Exclusive;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (attributes.Get(&lt;SPAN style="COLOR: maroon"&gt;"lowerBoundType"&lt;/SPAN&gt;).Equals(&lt;SPAN style="COLOR: maroon"&gt;"Inclusive"&lt;/SPAN&gt;))&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;_lowerBoundType = &lt;SPAN style="COLOR: teal"&gt;RangeBoundaryType&lt;/SPAN&gt;.Inclusive;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (attributes.Get(&lt;SPAN style="COLOR: maroon"&gt;"upperBoundType"&lt;/SPAN&gt;).Equals(&lt;SPAN style="COLOR: maroon"&gt;"Exclusive"&lt;/SPAN&gt;))&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;_upperBoundType = &lt;SPAN style="COLOR: teal"&gt;RangeBoundaryType&lt;/SPAN&gt;.Exclusive;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (attributes.Get(&lt;SPAN style="COLOR: maroon"&gt;"upperBoundType"&lt;/SPAN&gt;).Equals(&lt;SPAN style="COLOR: maroon"&gt;"Inclusive"&lt;/SPAN&gt;))&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;_upperBoundType = &lt;SPAN style="COLOR: teal"&gt;RangeBoundaryType&lt;/SPAN&gt;.Inclusive;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// デフォルトメッセージ&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;protected&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;override&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt; DefaultMessageTemplate&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;get&lt;/SPAN&gt; { &lt;SPAN style="COLOR: blue"&gt;return&lt;/SPAN&gt; &lt;SPAN style="COLOR: maroon"&gt;"数値範囲チェック。The value must fall within the range {0} ({1}) - {2} ({3})."&lt;/SPAN&gt;; }&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// 検証メソッド&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;protected&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;override&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; DoValidate(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; objectToValidate, &lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; currentTarget, &lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt; key, &lt;SPAN style="COLOR: teal"&gt;ValidationResults&lt;/SPAN&gt; validationResults)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (objectToValidate != &lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;try&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; valueToValidate = &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt;.Parse(objectToValidate.ToString());&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: teal"&gt;RangeValidator&lt;/SPAN&gt;&amp;lt;&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt;&amp;gt; validator = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;RangeValidator&lt;/SPAN&gt;&amp;lt;&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt;&amp;gt;(_lowerBound, _lowerBoundType, _upperBound, _upperBoundType);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: teal"&gt;ValidationResults&lt;/SPAN&gt; results = validator.Validate(valueToValidate);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (!results.IsValid)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt; message = &lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt;.Format(DefaultMessageTemplate, _lowerBound, _lowerBoundType, _upperBound, _upperBoundType);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;this&lt;/SPAN&gt;.LogValidationResult(validationResults, message, currentTarget, key);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;catch&lt;/SPAN&gt; (&lt;SPAN style="COLOR: teal"&gt;FormatException&lt;/SPAN&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt; message = &lt;SPAN style="COLOR: maroon"&gt;"数値を入力してください。"&lt;/SPAN&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;this&lt;/SPAN&gt;.LogValidationResult(validationResults, message, currentTarget, key);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align=left&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; FONT-FAMILY: 'ＭＳ ゴシック'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 0pt; mso-no-proof: yes"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0mm 0mm 0pt"&gt;&lt;SPAN lang=EN-US&gt;&lt;o:p&gt;&lt;FONT face=Century&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt; 
&lt;HR id=null&gt;

&lt;P&gt;&lt;/P&gt;
&lt;P&gt;このカスタムValidatorを使って検証することで、文字列でなかったら「&lt;FONT face="ＭＳ ゴシック" color=#800000 size=2&gt;数値を入力してください。&lt;/FONT&gt;」というメッセージを、数値で範囲チェック違反があったら、設定したデフォルトメッセージを表示するようにできます。&lt;/P&gt;
&lt;P&gt;EnterpriseLibraryのValidatorを継承することで、こんなようにカスタムValidatorを自由に作る事もできます。&lt;/P&gt;
&lt;P&gt;こんな感じでどうでしょうか？&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000080&gt;&lt;STRONG&gt;実行結果&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://proxy.f2.ymdb.yahoofs.jp/users/ccb9228c/bc/11a2/__hr_/6b05.jpg?BCSpFLHBrWkEFYK6"&gt;&lt;/P&gt;&lt;img src ="http://blogs.wankuma.com/tatsumihr/aggbug/88908.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tatsumihr(honekichi19@hotmail.com)</dc:creator><title>最近感動したこと</title><link>http://blogs.wankuma.com/tatsumihr/archive/2007/08/05/88897.aspx</link><pubDate>Sun, 05 Aug 2007 15:27:00 GMT</pubDate><guid>http://blogs.wankuma.com/tatsumihr/archive/2007/08/05/88897.aspx</guid><wfw:comment>http://blogs.wankuma.com/tatsumihr/comments/88897.aspx</wfw:comment><comments>http://blogs.wankuma.com/tatsumihr/archive/2007/08/05/88897.aspx#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://blogs.wankuma.com/tatsumihr/comments/commentRss/88897.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/tatsumihr/services/trackbacks/88897.aspx</trackback:ping><description>&lt;P&gt;&lt;FONT color=#ff0000 size=5&gt;SELECT @@IDENTITY&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;これです！！&lt;/P&gt;
&lt;P&gt;SQL Serverってあまりいじってなかったんだけど、最近どうしても必要になったので、手探りながら触ってます。&lt;/P&gt;
&lt;P&gt;主キーの自動採番を使おうとIDENTITYを指定したんだけど、どうやってレコード挿入後にIDENTITY列を取得しようかと調べていたら見つけたもの。&lt;/P&gt;
&lt;P&gt;SQL文の最後に「SELECT&amp;nbsp; @@IDENTITY」をつけるだけで良いって、&lt;FONT color=#ee82ee size=5&gt;楽すぎるじゃないか！！&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;ちょっと幸せになれた瞬間でしたー&lt;/P&gt;
&lt;P&gt;なにかもっと幸せになれることないかなぁ？？？&lt;/P&gt;
&lt;P&gt;
&lt;HR id=null&gt;

&lt;P&gt;&lt;/P&gt;
&lt;P&gt;正解は「&lt;FONT color=#ff0000 size=5&gt;SCOPE_IDENTITY&lt;/FONT&gt;」でした！！ (2007/8/6)&lt;/P&gt;
&lt;P&gt;以下、MSDNでの解説URL。&lt;/P&gt;
&lt;P&gt;&lt;A href="http://msdn2.microsoft.com/ja-JP/library/ms190315.aspx"&gt;http://msdn2.microsoft.com/ja-JP/library/ms190315.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://msdn2.microsoft.com/ja-JP/library/ms187342.aspx"&gt;http://msdn2.microsoft.com/ja-JP/library/ms187342.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;
&lt;HR id=null&gt;

&lt;P&gt;&lt;/P&gt;
&lt;P&gt;むらぷろさんがこの件についてまとめてくれました。以下のブログです。&lt;/P&gt;
&lt;P&gt;&lt;A id=viewpost.ascx_TitleUrl HREF="/mura/archive/2007/08/07/89246.aspx"&gt;&lt;FONT color=#223355&gt;SQL Server によるIDの生成&lt;/FONT&gt;&lt;/A&gt; &lt;/P&gt;&lt;img src ="http://blogs.wankuma.com/tatsumihr/aggbug/88897.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tatsumihr(honekichi19@hotmail.com)</dc:creator><title>Validation Application Block で構成ファイルを利用した検証ルールの設定</title><link>http://blogs.wankuma.com/tatsumihr/archive/2007/08/05/88884.aspx</link><pubDate>Sun, 05 Aug 2007 13:26:00 GMT</pubDate><guid>http://blogs.wankuma.com/tatsumihr/archive/2007/08/05/88884.aspx</guid><wfw:comment>http://blogs.wankuma.com/tatsumihr/comments/88884.aspx</wfw:comment><comments>http://blogs.wankuma.com/tatsumihr/archive/2007/08/05/88884.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.wankuma.com/tatsumihr/comments/commentRss/88884.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/tatsumihr/services/trackbacks/88884.aspx</trackback:ping><description>&lt;P&gt;Enterprise Library 3.1 の Validation Application Block で、構成ファイルを利用した検証ルールの設定方法を記事にまとめました。&lt;/P&gt;
&lt;P&gt;&lt;A id=viewpost.ascx_TitleUrl HREF="/tatsumihr/articles/88883.aspx"&gt;&lt;FONT color=#009933&gt;Validation Application Block を使おう！！　～構成ファイル編～ &lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;構成ファイルに検証ルールを設定する事で、Visual Studioで自動生成されたクラスのメソッドやプロパティについても、Designer.csを触ることなく検証できます。&lt;/P&gt;
&lt;P&gt;今回はデータセットに対して検証をかけるというサンプルを作ってみました。実行結果はこんな感じです。&lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://proxy.f2.ymdb.yahoofs.jp/users/ccb9228c/bc/11a2/__hr_/e2a7.jpg?BCYx9KHBovPs7uJR"&gt;&lt;/P&gt;
&lt;P&gt;DataGridViewにバインドしたDataSetに対して検証をかけます。データベースからデータを取得してそれを編集し、データベースへ再登録する、なんていう処理を行うときに、データベース再登録前に値チェックを行うと思います。そんなときにもValidation Application Blockを利用することがきます。&lt;/P&gt;
&lt;P&gt;結構簡単にできるのでお試しあれ！！&lt;/P&gt;&lt;img src ="http://blogs.wankuma.com/tatsumihr/aggbug/88884.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tatsumihr(honekichi19@hotmail.com)</dc:creator><title>App.config、Web.configに設定した別の構成ファイルを読み込む</title><link>http://blogs.wankuma.com/tatsumihr/archive/2007/07/14/85186.aspx</link><pubDate>Sat, 14 Jul 2007 21:41:00 GMT</pubDate><guid>http://blogs.wankuma.com/tatsumihr/archive/2007/07/14/85186.aspx</guid><wfw:comment>http://blogs.wankuma.com/tatsumihr/comments/85186.aspx</wfw:comment><comments>http://blogs.wankuma.com/tatsumihr/archive/2007/07/14/85186.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.wankuma.com/tatsumihr/comments/commentRss/85186.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/tatsumihr/services/trackbacks/85186.aspx</trackback:ping><description>&lt;P&gt;&lt;A id=viewpost.ascx_TitleUrl HREF="/tatsumihr/articles/79793.aspx"&gt;&lt;FONT color=#009933&gt;アプリケーション構成ファイル（App.config）にカスタム構成セクションを追加する&lt;/FONT&gt;&lt;/A&gt; では、構成ファイルにカスタム構成セクションを追加する方法を解説しました。&lt;/P&gt;
&lt;P&gt;今回はそれを応用して、App.configに別の構成ファイルのパスを指定し、その構成ファイルを読み込む方法を解説します。アプリケーションが大規模になればなるほど、1つの構成ファイルに全ての設定を行うことは現実的ではありません。構成ファイルを複数に分割して、それぞれを必要に応じて読み込むことが必要になります。そんなときのヒントになれば良いなと思います。&lt;/P&gt;
&lt;P&gt;記事の方に書いたので、興味のある方は以下のリンクからどうぞ～&lt;/P&gt;
&lt;P&gt;&lt;A id=viewpost.ascx_TitleUrl HREF="/tatsumihr/articles/85183.aspx"&gt;&lt;FONT color=#009933&gt;アプリケーション構成ファイル（App.config）に設定した別の構成ファイルを読み込む&lt;/FONT&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src ="http://blogs.wankuma.com/tatsumihr/aggbug/85186.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tatsumihr(honekichi19@hotmail.com)</dc:creator><title>Validation Application Block を使おう！！　～属性編～</title><link>http://blogs.wankuma.com/tatsumihr/archive/2007/06/23/81812.aspx</link><pubDate>Sat, 23 Jun 2007 11:25:00 GMT</pubDate><guid>http://blogs.wankuma.com/tatsumihr/archive/2007/06/23/81812.aspx</guid><wfw:comment>http://blogs.wankuma.com/tatsumihr/comments/81812.aspx</wfw:comment><comments>http://blogs.wankuma.com/tatsumihr/archive/2007/06/23/81812.aspx#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://blogs.wankuma.com/tatsumihr/comments/commentRss/81812.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/tatsumihr/services/trackbacks/81812.aspx</trackback:ping><description>&lt;P&gt;EnterpriseLibrary3.1がリリースして早1ヶ月。巷で話題(？)のValidation Application Blockを使ってみました。今まで入力値検証の実装にかなり苦労していただけに、期待も高いApplication Blockです。ちょっと触ってみましたが、なかなか使い勝手も良さそうです！&lt;/P&gt;
&lt;P&gt;ということで、触ってみた感想も踏まえてご紹介。今回は属性を使って入力値検証を行う方法です。設定ファイルを使った検証ルールの指定の仕方、ValidationProviderの使い方、Validation Application Blockの中身の解説などは、機会を見て追々やろうかなと。&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#000080 size=4&gt;=== 属性を使った入力値検証 ===&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;まずは完成系です。それぞれのテキストボックスに値を入れてValidateボタンを押下します。すると入力値検証エラーになった項目に対して、ValidationResultツリービューにエラーメッセージを表示するという、とても簡単なサンプルです。&lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://proxy.f2.ymdb.yahoofs.jp/users/ccb9228c/bc/11a2/__sr_/bb21.jpg?BChdb9GBaGd9_QUD"&gt;&lt;/P&gt;
&lt;P&gt;Validation Application Blockについて書き出したら長くなったので、詳細は「記事」の方に譲ります。画像のような入力値検証を結構簡単に作る事ができますよ！！要チェックのApplication Blockです。&lt;/P&gt;
&lt;P&gt;詳しくはこちら→　&lt;A id=viewpost.ascx_TitleUrl HREF="/tatsumihr/articles/81805.aspx"&gt;&lt;FONT color=#009933&gt;Validation Application Block を使おう！！　～属性編～&lt;/FONT&gt;&lt;/A&gt; &lt;/P&gt;&lt;img src ="http://blogs.wankuma.com/tatsumihr/aggbug/81812.aspx" width = "1" height = "1" /&gt;</description></item></channel></rss>