- 2025/01/18
- Category :
[PR]
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
IT系全般に及び知識メモ、全般と言っても興味があるもののみ
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
[プロファイルの呼出]
ASP.NET 2.0ではユーザー固有の情報(プロファイル)を管理するための
「プロファイル」機能が導入された
ユーザーごとに異なるテーマを適用し、
パーソナライズされたページを見せたりといった機能も簡単に実現
※匿名ユーザの場合は、[匿名ユーザの設定]が必要になります
1. プロファイル・プロパティを定義する
Web.config上に定義
<?xml version="1.0"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
<system.web>
<profile enabled="true">
<properties>
<add name="param" type="String" allowAnonymous="true" defaultValue="" readOnly="false"/>
</properties>
</profile>
</system.web>
</configuration>
2.値の取得・設定
string aaa = Profile.param;
Profile.param = "bbb";
※実際にプロファイルがデータベースに保存されている様子を自分の目で確認したければ、
仮想ディレクトリ直下の「App_Data」フォルダから「ASPNETDB.mdf」を開いてみよう。
aspnet_Profileテーブルを開くと、以下のようにユーザーごとのプロファイル情報が
データベースに保存されていることが確認できるはずだ。
[匿名ユーザの設定]
1. 匿名ユーザーの識別を有効にする
匿名ユーザーの識別機能(匿名識別)を有効化
<?xml version="1.0"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
<system.web>
<anonymousIdentification enabled="true" />
……中略……
</system.web>
</configuration>
2.プロファイルを削除する
匿名ユーザはCookieで紐付けられる為、クライアント側でCookieを削除すると
プロファイルとの関連付けがなくなってしまいゴミとして残ってしまう
このゴミプロファイルは以下のコマンドで定期的に掃除する
SqlProfileProvider provider =
(SqlProfileProvider)Profile.Providers["AspNetSqlProfileProvider"];
provider.DeleteInactiveProfiles(
ProfileAuthenticationOption.Anonymous, DateTime.Now.AddMonths(-3));
http://www.atmarkit.co.jp/fdotnet/dotnettips/483aspprofile1/aspprofile1.html
http://www.atmarkit.co.jp/fdotnet/dotnettips/486aspprofile2/aspprofile2.html