0

在我的 ASP.NET MVC 项目中,我需要编写代码来检查用户是否接受条款和条件。我正在使用实体框架和数据库优先方法。我有一个名为Appterms的表,其中有一个名为TermsAcceptedDate的字段。Appterms 表中还有其他字段,例如 GatewayUserIdtermId。' GatewayUserID 是注册用户的 ID,termId 是主键。“Termsaccepted”字段是位类型。

我尝试遵循这篇文章 MVC 3 如何让用户查看警告/免责声明屏幕但无法根据我的需要实现的自定义属性功能。

我正在使用这篇文章获取当前用户 ID来获取当前用户的 ID。因此,在此之后我如何返回 0 或 1 以检查他们是否接受了条款和条件。

这是我尝试使用的代码片段:

[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, 
Inherited = true, AllowMultiple = false)]
public class AcceptedTermsCheck : ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
    // Check if AcceptedTC is set to true

    // If set, then do nothing

    // Otherwise redirect to TC page
    }
 }

在这里检查用户是否接受条款,我应该在我的 GatewayUserId 字段中返回 true,即“1”,如果不是,它应该返回 false。但我不知道该怎么做。而且我也知道我应该创建会话来完成这项任务。但以前从未做过。

有什么帮助吗??谢谢..

4

2 回答 2

0

我认为这就是你想要做的。您可以回发数据或使用 jquery 发布到操作以检查条款是否被接受,然后启用提交按钮以获得更好的用户体验。无论你选择哪种方式,你都可以做这样的事情。

var dataEntityModel = new YoursEntities();
            AppTerm currentTerm = dataEntityModel.Appterms.ToList().
where(x=>x.GatewayUserId == yourCurrentUserID
&& x.termid == yourTermId).FirstOrDefault();

if(currentTerm.TermsAccepted == true)
{

}
else
{
   RedirectToAction("action","controller");
}
于 2013-08-21T18:21:18.297 回答
0
userlogin login = db.userlogins.Where(j => j.email == name && j.password == password && j.status == 1)
                               .FirstOrDefault();
于 2016-03-26T15:46:31.330 回答