「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。

-[[戻る>ASP.NET]]

* 目次 [#udd4b497]
#contents

*概要 [#r7154227]
[[ASP.NET Web Forms]] は、Web アプリケーションをイベント ドリブン~
+UIコンポーネントベースのアプローチで開発するためのフレームワーク。

豊富なサーバー コントロールにより、HTML レンダリングが行われるため、~
-Web アプリケーションの開発の敷居を下げ、
-且つ高い生産性を確保することができた

という点で優れたフレームワークである。

同様のコンポーネントベースのアプローチのJSFもJava EE 5でJava EE標準として追加された。

ただし、その利用にあたっては HTTP、HTML の知識が必要となる場面も多く、~
UI コンポーネントのレンダリングのカスタマイズの難易度は高いなどのデメリットもある。

*特徴 [#xe495b39]
-アーキテクチャがMVCモデルでは無いことと、
-UIコンポーネントに関する知識が必要になることで、

Strutsに慣れたJava技術者が使いこなすのは困難であるとされている。

**イベント・ドリブン+UIコンポーネントベースのアプローチ [#aff3ca1f]
ASPに続くHTML画面の生成技術だが、ASPと大きく異なり、~
「[[Windows Forms]]」の「イベント・ドリブン+UIコンポーネントベース」のアプローチと~
ほぼ ≒ のプログラミング・モデルをWebアプリケーションでも実現できるフレームワーク、UIサブシステム。

従って、Visual Studioデザイナと連動したRAD開発も可能である。

>JavaはJSF(JavaServer Faces)が~
[[ASP.NET Web Forms]]に似たアプローチをとっている。

**HTMLのカスタマイズの難易度が高い [#mdd28183]
-また、UIコンポーネントベース(UIコンポーネントからHTMLが出力される)方式のため、~
HTMLを直接操作できず、出力されるHTMLのカスタマイズが困難である。~

-この標準HTML出力のカスタマイズには、難易度の高い~
ASP.NET サーバーコントロールのカスタム コントロール化が必要になることがある。

-ASP.NET サーバー コントロールのカスタム コントロール開発が困難な場合、~
下記のHTML サーバー コントロールを使用するという手段もある。

***参考 [#s92b682d]
-[[.NETコントロールのカスタマイズ方法]]

-HtmlControl クラス (System.Web.UI.HtlControls)~
https://msdn.microsoft.com/ja-jp/library/system.web.ui.htmlcontrols.htmlcontrol.aspx
--System.Web.UI.HtmlControls.HtmlArea
--System.Web.UI.HtmlControls.HtmlContainerControl
--System.Web.UI.HtmlControls.HtmlImage
--System.Web.UI.HtmlControls.HtmlInputControl
--System.Web.UI.HtmlControls.HtmlLink
--System.Web.UI.HtmlControls.HtmlMeta
--System.Web.UI.HtmlControls.HtmlSource
--System.Web.UI.HtmlControls.HtmlTitle
--System.Web.UI.HtmlControls.HtmlTrack

-ASP.NET Web ページへの HTML サーバー コントロールの追加~
https://msdn.microsoft.com/ja-jp/library/fs6fbk8a.aspx
--方法 : ASP.NET 構文を使用して HTML サーバー コントロールを Web ページに追加する
--方法 : HTML サーバー コントロールを HTML 要素に変換する

-方法 : HTML サーバー コントロール プロパティをプログラムで設定する~
https://msdn.microsoft.com/ja-jp/library/wwhe0at8.aspx

*参考 [#r823204f]
-[[ASP.NET Web Formsの国際化対応]]
-[[ASP.NET Web Forms vs ASP.NET MVC]]

----
Tags: [[:.NET開発]], [[:ASP.NET]], [[:ASP.NET Web Forms]]


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS