加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – 如何在MVC3中存储用户首选项

发布时间:2020-12-16 09:35:12 所属栏目:asp.Net 来源:网络整理
导读:我有一个MVC3应用程序,我想让用户能够设置用户登录时启用的首选项. 我真的不知道从哪里开始这个,并且真的很感激被指向正确的方向.我确实尝试过对会员类的一些更改,但现在我认为这可能不是最好的方法. 解决方法 一旦唯一标识用户,您就可以在数据库中执行此操
我有一个MVC3应用程序,我想让用户能够设置用户登录时启用的首选项.

我真的不知道从哪里开始这个,并且真的很感激被指向正确的方向.我确实尝试过对会员类的一些更改,但现在我认为这可能不是最好的方法.

解决方法

一旦唯一标识用户,您就可以在数据库中执行此操作(听起来您可能至少使用一个开箱即用的成员资格提供程序).在这种情况下,您可能希望实现自己的成员资格提供程序.

您必须做一些工作才能开始实施自己的提供商.如果这是您的唯一要求,您可以通过编写自己的类来避免它,该类以您选择的格式返回设置

public static class UserSettings
{
    public static string GetSettings(IPrincipal user)
    {
        if(user.Identity.IsAuthenticated)
        {
            // dip into database using user.Identity.Name property
            return "string with user settings";
            // this also assumes user.Identity.Name is uniquely able
            // to identify a user in your database!
        }

        return string.Empty;
    }
}

或者,如果信息完全无关紧要,也许您可??以实现用户设置的cookie表示.当然,这包含使用cookie的所有注意事项,但您可以避免将信息存储在数据库中

你有HttpContext的任何地方都可以获取设置值,如下所示:

if(HttpContext.Current != null)
{
    string userSettings = HttpRequest.Current.Request.Cookies["NameOfCookie"];
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读