SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

ASP.NET Identity入門

ASP.NET Identityのプロファイル情報のカスタマイズ

ASP.NET Identity入門 第3回

サンプル実行

 それでは、変更したサンプルを実際に動かしてみましょう。まず、新しいアプリケーションを作成した直後なので、ユーザーの登録を行います。ASP.NET Identity 2.0のテンプレートでは、ユーザー名からメールアドレスにログインアカウントが変更されているのに注意しましょう。

 登録を終えるとホームページに戻るので、画面右上の「Hello, (メールアドレス) !」となっているリンクをクリックして、ユーザー管理画面を表示します(図7)。

図7 ユーザー管理画面リンク
図7 ユーザー管理画面リンク

 ユーザー管理画面では、追加した「プロファイルの変更フォーム」が確認できます(図8)。まだ、新たに追加したプロファイル項目は値を設定していないため、空で表示されます。

図8 ユーザー管理画面のプロファイル変更フォーム
図8 ユーザー管理画面のプロファイル変更フォーム

 誕生日に日付以外を入力すると、エラーとなることも確認できます(図9)。

図9 誕生日の検証結果
図9 誕生日の検証結果

 姓、名、誕生日に値を入力して「プロファイルの更新」ボタンをクリックすると、更新が行われ画面が再表示されます(図10)。完了メッセージの表示も確認できます。

図10 プロファイル更新結果
図10 プロファイル更新結果

 また、AspNetUsersテーブルを見ると、入力した値で更新されたことが確認できます(図11)。

図11 更新後のAspNetUsersテーブル
図11 更新後のAspNetUsersテーブル

まとめ

 ASP.NET Identityのサンプルを使い、プロファイル情報を追加し、その内容を編集する方法を紹介してきました。大部分の作業が自動化されているため、思いのほか簡単にできることが分かったのではないかと思います。今回の手順をまとめると、次のようになります。

  • ApplicationUserクラスに追加するプロファイル項目をプロパティとして定義する
  • EFのマイグレーション機能を使って、データストアのテーブルを変更する
    • Enabel-Migratiosコマンド:マイグレーション機能を有効にする
    • Add-Migrationコマンド:ApplicationUserクラスの変更を元に、マイグレーション処理を行うクラスを生成する
    • Update-Databaseコマンド:マイグレーションを実行する
  • 追加したプロファイル項目を管理画面などで使用する
    • ログインユーザーの情報を取得するには、UserManagerクラスの拡張メソッドである、FindByIdメソッドを使う
    • 引数にはHttpContextのUserプロパティに設定された値を使用する
    • ユーザー情報を更新するには、UserManagerクラスの拡張メソッドであるUpdateメソッドを使う

 次回は、先日リリースされたASP.NET Identity 2.0の新機能について、VS2013 Update 2のテンプレートを使って説明する予定です。お楽しみに。

この記事は参考になりましたか?

連載通知を行うには会員登録(無料)が必要です。
既に会員の方はを行ってください。
ASP.NET Identity入門連載記事一覧

もっと読む

この記事の著者

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるLaravel実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

WINGSプロジェクト 高野 将(タカノ ショウ)

<個人紹介>新潟県長岡市在住の在宅リモートワークプログラマー。家事や育児、仕事の合間に長岡IT開発者勉強会(NDS)、Niigata.NET、TDDBCなどのコミュニティに関わったり、Web記事や書籍などの執筆を行ったりしている。著書に『アプリを作ろう! Visual C#入門 Visual C# 2017対応』(日経BP社、2017)など。< WINGSプロジェクト について>有限会社 WINGSプロジェクト が運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。 2026年時点での 登録メンバ は約50名で、現在も執筆メンバを 募集中 。興味のある方は、どしどし応募頂きたい。 著書 記事 多数。 RSS X: @WingsPro_info (公式)、 @WingsPro_info/wings (メンバーリスト) Facebook

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/7845 2014/07/04 14:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー