- PR -

MembershipのLastLoginDateについて

1
投稿者投稿内容
スプリンガー
会議室デビュー日: 2008/09/14
投稿数: 6
投稿日時: 2008-09-15 00:11
はじめまして。こんばんは。

VS2005でWebサイトを作成しています。(初心者です。)

登録されているユーザの
ユーザ一覧ページのようなものを作成していて、
GridViewにユーザ名、Email、最終ログイン日時を
表示させるシンプルなページなんですが、
すべてのユーザの「最終ログイン日付」が9時間前の日時になってしまっています。

GridViewにはvw_aspnet_MembershipUsersビューのデータを表示させています。

サーバーエクスプローラでそのビューの結果を表示させてみても、
同じように9時間前の日時になっています。

しかし、プログラムで、
Dim user As System.Web.Security.MembershipUser
user = Membership.GetUser("てすと")
のuser.LastLoginDateは正常な日付が返されます。

どなたかご存知の方、なぜこのようなことが起こるのか教えてください。

開発環境:VS2005
開発言語:VB
データベース:SQL SERVER2005 EXPRESS
メンバシッププロバイダクラス:AspNetSqlMembershipProvider
どっとねっとふぁん
ぬし
会議室デビュー日: 2005/02/23
投稿数: 935
投稿日時: 2008-09-16 10:41
以下は推測ですけど。
9時間前、というとグリニッジ標準時と日本の時差とちょうど同じですね。
データベースの内部にはグリニッジ標準時で格納し、それをuser.LastLoginDateで参照する場合にはサーバの設定に合わせた日時を表示するような仕組みになっているのではないでしょうか。
1

スキルアップ/キャリアアップ(JOB@IT)