如何检查会话变量是否存在使用Razor

时间:2014-05-10 18:41:37

标签: asp.net-mvc razor

我想使用以下行检查会话变量是否存在:

if (@Session["LoginAttempts"]!=null && (int)@Session["LoginAttempts"] > 3 && dto.Captcha.length == 0)
{

}

我在!=null收到错误的语法邮件。

2 个答案:

答案 0 :(得分:2)

我想在Session之前丢失'@'并在if之前将其丢失。我猜想。

答案 1 :(得分:0)

我建议将Razor变量放入脚本块中:

@{
    var loginAttemptsExceeded = ((int)Session["LoginAttempts"] > 3).ToString().ToLower();
}

然后在你的JavaScript中:

var loginAttemptsExceeded = @loginAttemptsExceeded;

if (loginAttemptsExceeded && dto.Captcha.length === 0)
{
    ....
}

但您应该做的是为包含视图所需信息的视图返回强类型ViewModel