ASP.NET MVC
Response.Writeとかで文字列を出力する時などで、その文字列がHTMLやJavaScriptとして解釈されたくない場合がある。 たとえば、テキストボックスにJavaScriptを入れて、それがJavaScriptとして解釈された場合、意図しない動作になり、セキュリティ的に問題に…
Controller.Viewに、Viewの名前を指定すると、既定のViewではなく、そちらを表示するようにしてくれる。Controller.View メソッド (System.Web.Mvc) | Microsoft DocsFirstController.csは、HTTP POSTの時のPostメソッドで、Viewの引数に"Result"を指定。 Po…
Html.TextBoxで、テキストボックスを出力できる。 ただし、Html.BeginFormとは違い、HTML文字列を返すだけなので、呼び出しだけではダメで戻り値を"%="で出力しないといけない。 Index.aspxで、こうすると、 テキストボックスが表示されてるテキストボックス…
MvcForm.Disposeは、本来MvcFormオブジェクトの終了処理であり、リソース解放とかだが、実はformの終了タグを出力することも担っている。MvcForm.Dispose メソッド (System.Web.Mvc.Html) | Microsoft DocsIndex.aspxで、 <%@ Page Language="C#" Inherits="…
MvcForm.EndFormでもformの終了タグを出力することが出来る。MvcForm.EndForm メソッド (System.Web.Mvc.Html) | Microsoft DocsIndex.aspxで、こう書いた場合、 終了タグが出力されている終了タグが出力されている。Sample/aspnetmvc/MvcForm/EndForm/src/M…
Html.BeginFormが返す値は、MvcFormとなっている。MvcForm クラス (System.Web.Mvc.Html) | Microsoft DocsIndex.aspxで、戻り値の型を確認してみる。 確かにMvcForm確かにMvcForm。Sample/aspnetmvc/MvcForm/MvcForm/src/MvcForm_ at master · bg1bgst333/S…
Html.EndFormで、formタグの終了タグを出力する。 Index.aspxで、こうすると、 formの終了タグが出力されてるformの終了タグが出力されてる。FormExtensions.EndForm(HtmlHelper) メソッド (System.Web.Mvc.Html) | Microsoft Docsこちらも拡張メソッドで、F…
Html.BeginFormで、formタグの開始タグを出力する。 Index.aspxで、こうすると、 真っ白真っ白。 しかし、 ページのソースを表示するとページのソースを表示すると、 このページ用のformの開始タグが出力されてるこのページ用のformの開始タグが出力されてる…
HtmlHelperは、HTML要素を表示するためのヘルパークラス。HtmlHelper クラス (System.Web.Mvc) | Microsoft DocsIndex.aspxで、helperオブジェクトの中を見てみる。 へえ、RouteCollectionなんかもあるのね。へえ、RouteCollectionなんかもあるのね。Sample/…
ASP.NET MVCでは、"asp:"で始まるWebサーバコントロールの代わりに、HTML要素を表示するためのヘルパークラスがあり、ViewPage.Htmlプロパティから使うことが出来る。ViewPage.Html プロパティ (System.Web.Mvc) | Microsoft DocsIndex.aspxで、ViewPage.Htm…
AcceptVerbsAttributeは、どのHTTPメソッドに応答するかを指定する属性で、実はHTTPのPOSTに応答することもできる。AcceptVerbsAttribute クラス (System.Web.Mvc) | Microsoft DocsFirstController.csで、Postアクションを追加するのだが、通常のPost()メソ…
Controllerのアクションの最後は、Controller.Viewメソッドなどで、ViewResultオブジェクトを返す。Controller.View メソッド (System.Web.Mvc) | Microsoft DocsFirstController.csで、 using System; using System.Collections.Generic; using System.Linq…
RouteCollectionへの追加に、RouteCollectionのメソッドを使ってもいいが、ちょっと難しいので、拡張メソッドRouteCollectionExtensions.MapRouteを使う。RouteCollectionExtensions.MapRoute メソッド (System.Web.Mvc) | Microsoft DocsGlobal.asax.csで、…
RouteCollectionの中身を見てみる。RouteCollection クラス (System.Web.Routing) | Microsoft DocsGlobal.asax.csで、となっている中で、RegisterRoutesの中にブレークポイントしていく。 登録前なのでCountは0登録前なのでCountは0。 routes.IgnoreRouteで…
どのURLが、どのコントローラとアクションに対応しているかを定義しているのが、ルートテーブル。 RouteTable.Routesでアクセスできる。RouteTable.Routes プロパティ (System.Web.Routing) | Microsoft Docs 第1回 ASP.NET MVCフレームワーク 基本のキ:連…
View側でViewDataのアイテムを取り出して表示してみる。ViewDataDictionary.Item[String] プロパティ (System.Web.Mvc) | Microsoft DocsFirstController.csでViewData["msg"]に"ABCDE"をセットしていれば、 Index.aspxで、こうすれば、 "ABCDE"が表示される…
ViewPage.ViewDataは、View側からアクセスできるViewDataである。ViewPage.ViewData プロパティ (System.Web.Mvc) | Microsoft DocsIndex.aspxで、ViewData.ToStringを見てみる。 ViewPageのViewDataプロパティViewPageのViewDataプロパティ。 型はViewDataD…
ViewDataDictionaryに値をセットしてみよう。ViewDataDictionary クラス (System.Web.Mvc) | Microsoft DocsFirstController.csで、"msg"をキーとして、"ABCDE"という値をセットする。 こんな感じでキーと値がセットされているこんな感じでキーと値がセット…
ViewDataは、ControllerとViewの間で共有するデータを持つ。ControllerBase.ViewData プロパティ (System.Web.Mvc) | Microsoft DocsController側からは、ControllerBase.ViewDataでアクセスする。 FirstController.csで、型を見てみる。 アクセスするとアク…
Controllerに対するViewを追加しないと、あのようなエラーになってしまう。 追加したViewはViewPageを基底クラスとしている。ViewPage クラス (System.Web.Mvc) | Microsoft Docsまずは、 FirstControllerを追加FirstControllerを追加。 Viewの追加はちょっ…
ここからは、ASP.NET MVCに入っていく。第1回 ASP.NET MVCフレームワーク 基本のキ:連載:ASP.NET MVC入門(2/5 ページ) - @ITまずは、あるひとつのURLにアクセスしたときの処理を担当するControllerを追加する。Controller クラス (System.Web.Mvc) | Mi…