ASP.NET
SiteMapDataSourceで、サイトマップ・ファイルからサイトの構造情報を抽出する。SiteMapDataSource クラス (System.Web.UI.WebControls) | Microsoft Learn [ASP.NET]Webフォーム上でサイト・メニュー/サイト・パスを作成するには?[2.0のみ、C#、VB] -…
Menuで、メニュー形式で表示できる。Menu クラス (System.Web.UI.WebControls) | Microsoft Learn ASP.NET 2.0が変えるWebアプリ開発の世界 第2回 ASP.NET 2.0のマスター・ページとサイトマップ(3/3) - @IT [ASP.NET]Webフォーム上でサイト・メニュー/…
TreeViewは、ツリー構造で表示されるナビゲーションコントロール。TreeView クラス (System.Web.UI.WebControls) | Microsoft Learn ASP.NET 2.0が変えるWebアプリ開発の世界 第2回 ASP.NET 2.0のマスター・ページとサイトマップ(3/3) - @IT [ASP.NET]W…
@PageのMasterPageFile属性に、マスター ページのファイル名を指定する。@ Page | Microsoft Learnstyle1.cssは、こう書く。 Master1.masterは、style1.cssを適用。 Page1.aspxは、MasterPageFileに、Master1.masterを指定。 style2.cssは、色が違う。 Maste…
ContentPlaceHolderは複数箇所に置けるので、トップ、メイン、サイドバー、フッター、をページごとに差し替えられる。ContentPlaceHolder クラス (System.Web.UI.WebControls) | Microsoft LearnContentPlaceHolder.masterで、topContent、sideBar、mainCont…
マスターファイルのContentPlaceHolderは同じで、各ページのContentの内容を変えることで、内容を差し替えられる。Content クラス (System.Web.UI.WebControls) | Microsoft Learn マスター ページを使用したSite-Wide レイアウトの作成 (C#) | Microsoft Le…
@Masterディレクティブで、MasterPageの設定を定義する。@ Master | Microsoft Learn今回は、余計な属性は削りつつ、VisualStudio使わず作る。 この2つがあればいい。この2つがあればいい。 MasterDirective.masterで、このように書く。 ここでは、CodeFile…
MasterPageで、複数のページで共通したページテンプレートを定義できる。MasterPage クラス (System.Web.UI) | Microsoft Learn マスター ページを使用したSite-Wide レイアウトの作成 (C#) | Microsoft Learn ASP.NET 2.0が変えるWebアプリ開発の世界 第2回…
Tagnameで、ユーザーコントロールを分けてみる。@ Register | Microsoft Learn .NET TIPS [ASP.NET]サイト共通のレイアウト部分を部品化するには? - C# VB.NET Webフォーム - @ITRegisterDirective.aspxで、Tagprefixを"uc"に統一し、Tagnameを分ける。 …
Tagprefixで、ユーザーコントロールを分けてみる。@ Register | Microsoft Learn .NET TIPS [ASP.NET]サイト共通のレイアウト部分を部品化するには? - C# VB.NET Webフォーム - @ITRegisterDirective.aspxで、TagnameをUserControlに統一しても、Tagpref…
@Registerディレクティブを使って、タグプリフィックスとカスタムコントロールの関連付けをする。@ Register | Microsoft Learn .NET TIPS [ASP.NET]サイト共通のレイアウト部分を部品化するには? - C# VB.NET Webフォーム - @ITUserControlRed.ascxは、…
@Controlディレクティブを使って、独自のコントロール(ユーザコントロール)を作る。@ Control | Microsoft Learn .NET TIPS [ASP.NET]サイト共通のレイアウト部分を部品化するには? - C# VB.NET Webフォーム - @ITユーザコントロールは、.ascxファイルに…
Panelは、他のコントロール達をまとめてグループ化するコンテナとして機能するクラスのひとつ。Panel クラス (System.Web.UI.WebControls) | Microsoft DocsPanel_.aspxで、サイズと背景色を指定。 赤いパネルが表示された赤いパネルが表示された。Sample/as…
GenericPrincipal.IsInRoleで、そのユーザが指定されたロールに所属しているか判定する。GenericPrincipal.IsInRole(String) メソッド (System.Security.Principal) | Microsoft Docsまず、users.xmlを、このように変更する。 testuser1がadminで、testuser2…
FormsIdentity.Nameで、ユーザ名が見れる。FormsIdentity.Name プロパティ (System.Web.Security) | Microsoft Docsmain.aspxで、こうして、ログインすると、 testuser1が見えるtestuser1が見える。Sample/aspnet/FormsIdentity/Name/src/FormsIdentity_ at …
GenericPrincipalが出来たら、それをHttpContext.Userにセットすると、遷移先ページからユーザ情報が見れる。HttpContext.User プロパティ (System.Web) | Microsoft DocsGlobal.asax.csで、Context.Userにprincipalをセットして、 main.aspxを追加し、Page.…
FormsIdentityが出来たら、それを使って、今度はGenericPrincipalを生成する。GenericPrincipal(IIdentity, String[]) コンストラクター (System.Security.Principal) | Microsoft DocsGlobal.asax.csで、コンストラクタにidentityとroleを渡して、GenericPr…
FormsAuthenticationTicketが取得できたなら、そこからFormsIdentityを生成する。FormsIdentity コンストラクター (System.Web.Security) | Microsoft DocsGlobal.asax.csで、コンストラクタにticketを渡して、FormsIdentityを生成。 こんな感じで生成される…
FormsAuthenticationTicketを使う理由として、ユーザ名とともに独自のデータを送ることが出来る点がある。 以前やったFormsAuthenticationTicketのコンストラクタの最後の引数には、userDataという文字列を指定出来た。 ここにrole文字列を指定しておくと、F…
FormsAuthentication.Encryptで、FormsAuthenticationTicketを暗号化したので、FormsAuthentication.Decryptで復号化する。FormsAuthentication.Encrypt(FormsAuthenticationTicket) メソッド (System.Web.Security) | Microsoft DocsGlobal.asax.csで、こう…
HttpContext.Requestで、HttpRequestが取得できるので、ここからクッキーを取り出して認証処理に使うことが出来る。HttpContext.Request プロパティ (System.Web) | Microsoft DocsDefault.aspxで、暗号化したチケットをクッキーに追加してResponse.Redirect…
Global.asaxは、ページを超えて存在するものなので、HTTPリクエストなどの情報は、HttpApplication.Contextが持っている。HttpApplication.Context プロパティ (System.Web) | Microsoft DocsGlobal.asax.csで、Contextの型を見る。 HttpContextであるHttpCo…
認証リクエストを処理するときは、Global.asaxのApplication_AuthenticateRequestに来る。 これは、HttpApplication.AuthenticateRequestイベントのハンドラである。HttpApplication.AuthenticateRequest イベント (System.Web) | Microsoft DocsDefault.asp…
@Applicationディレクティブが書かれたグローバルアプリケーションクラスGlobal.asaxは、アプリケーション全体のイベントを処理する。第11回 実践アプリケーションでもっと踏み込むASP.NET 2.0の世界(4/4) - @ITここからはVSで、 プロジェクト作成プロジ…
FormsAuthentication.GetRedirectUrlで、ログイン成功後に遷移するページへのリダイレクトURLをもらう。FormsAuthentication.GetRedirectUrl(String, Boolean) メソッド (System.Web.Security) | Microsoft Docslogin.aspxで、リダイレクトURLがどうなるかみ…
FormsAuthenticationTicketをクッキーに保存するときに、FormsAuthentication.Encryptで暗号化しておく。FormsAuthentication.Encrypt(FormsAuthenticationTicket) メソッド (System.Web.Security) | Microsoft Docslogin.aspxで、暗号化文字列を出してみる…
FormsAuthenticationTicketは、クッキーに保持しておくことで、様々なページの認証で使うのだが、クッキーを識別する名前にはFormsAuthentication.FormsCookieNameを使う。FormsAuthentication.FormsCookieName プロパティ (System.Web.Security) | Microsof…
これまでは、ユーザ認証をFormsAuthenticationクラスに任せていたが、ここからは独自の認証を実装する。 web.configを、こうして、ユーザ情報は外出し。 users.xmlを用意し、users.xmlを用意し、testuser1の情報はこう。 authdir2の下の、login.aspxは、独自…
FormsAuthenticationTicketは、認証チケットというもので、ユーザ識別情報、有効期限、ロール、などが格納されてる。FormsAuthenticationTicket クラス (System.Web.Security) | Microsoft Docsmain.aspxで、ticket.Nameで名前を見てみる。 ログインするとロ…
FormsIdentity.Ticketで、FormsIdentityが持つチケット情報を取得できる。FormsIdentity.Ticket プロパティ (System.Web.Security) | Microsoft Docsmain.aspxで、FormsIdentity.Ticketの型を見てみる。 ログインするとログインすると、 FormsAuthentication…