我在ASP.NET MVC3中工作。当用户完成注册时,我想通知用户仅在第一个用户更改个人信息。我该怎么办?
答案 0 :(得分:9)
您始终可以创建一个新变量来检查这是否是用户的首次登录,但该变量在首次登录后将变为未使用。
我假设你有UserLastLoggedin的DateTime变量或者这些行的东西?如果为null,则用户首次登录。
答案 1 :(得分:0)
有几种方法可以实现这一目标。您可以使用“个人档案”,或在数据库中创建一个表,如果他是第一次登录,您可以将userId与指示器一起存储。
假设您要使用配置文件:将此添加到web.config
<profile>
<providers>
<clear />
<add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/" />
</providers>
<properties>
<add name="EverLoggedOn" defaultValue="False" type="System.Boolean" />
</properties>
</profile>
如果您使用的是默认的AccountController,请查看以下代码:
if (Membership.ValidateUser(model.UserName, model.Password))
{
FormsAuthentication.SetAuthCookie(model.UserName, model.RememberMe);
if (Roles.IsUserInRole(model.UserName, "Administrator"))
{
return RedirectToAction("Index", "ManageApp");
}
var userProfile = ProfileBase.Create(model.UserName);
var FirstTime = userProfile.GetPropertyValue("EverLoggedOn");
// rest of the code is up to you :)
答案 2 :(得分:-1)
如果用户完成您的注册过程,您需要存储一个值,表明他尚未更改其个人信息。
像
这样的东西isNewUser = true;