不能将字符串转换为布尔,但没有布尔?

问题描述:

我有一个简单的视图模型来计算由以下填充登录:不能将字符串转换为布尔,但没有布尔?

public ActionResult LoginCount() 
    { 
     IQueryable<LoginGroup> data = from sysAction in db.SysActions 
              //where movie. 
             where sysAction.ActionType = "Login" 
              group sysAction by System.Data.Entity.DbFunctions.TruncateTime(sysAction.Date) into LoginGroup 
              select new LoginGroup() 
              { 
               Date = LoginGroup.Key, 
               LoginCount = LoginGroup.Count(), 
              }; 
     return View(data.ToList()); 
    } 

它的工作原理除非我在where子句中添加拔出只能用“登录”的价值actiontypes。没有布尔被使用。为什么错误?

+7

您需要'==',而不是'='进行比较。 – CodeCaster

+0

啊,不敢相信我错过了。谢谢您的帮助。转发,我会给你答案。吉兹 –

检查值时,您需要使用==而不是=。他们有两种不同的用途。 ==用于检查一个值与另一个值的比较,=用于分配目的。

所以你的情况,你可以尝试以下方法:

public ActionResult LoginCount() 
{ 
    IQueryable<LoginGroup> data = 
      from sysAction in db.SysActions 
      where sysAction.ActionType == "Login" 
      group sysAction by TruncateTime(sysAction.Date) 
       into LoginGroup 
       select new LoginGroup() 
       { 
        Date = LoginGroup.Key, 
        LoginCount = LoginGroup.Count() 
       }; 

    return View(data.ToList()); 
} 

我希望这有助于。