1

当用户第一次访问我的网络应用程序的某个部分时,我想向他们展示一个简短的模态常见问题解答。我们在这个应用程序上使用 .Net MVC,所以我知道我可以使用 Javascript 中的 cookie 完成类似的事情,并且过期日期很长。但是,我很好奇是否有更好的方法来实现这一点,因为用户可以从浏览器中清除 cookie。我猜 C# 或 razor 会为我提供更优雅的解决方案。感谢您的任何建议!

4

1 回答 1

3

如果用户通过了身份验证,为什么不将这些信息存储在服务器端(如数据库中)?然后,您可以将“标志”传达给视图(通过模型或 ViewBag),以便它可以决定是否提示 FAQ。

public ActionResult Index()
{
    bool isUsersFirstTime = IsFirstTime(); // Do something to read this value from the database
    if (isUsersFirstTime)
    {
        UpdateFirstTimeFlag(); // Do something to update this value in the database
    }

    ViewBag.FirstTimeUser = isUsersFirstTime;
}

然后在您看来,类似于(假设 Razor 语法):

@if (ViewBag.FirstTimeUser)
{
    <div>Here's the modal FAQ</div>
}

显然,如果您要实现更多的 MVVM 方法,您需要将FirstTimeUser属性放在 ViewModel 中并在视图中使用Model.FirstTimeUser.

于 2013-05-30T17:47:09.990 回答