如何在不使用model.Count的情况下获取Viewbag的数量

时间:2018-11-28 23:27:54

标签: asp.net-mvc lambda viewbag

如何从veiwbag中的lambda表达式中获得项目计数?

我不想使用model.count(),因为我有用于其他模型的模型指令,这是针对不同的东西

这是我的代码

            var Count = _context.Users_Accounts_Address
         .Where(c => c.Email == user)
         .Select(c =>  c.Post_Code + " " +c.AddressType );

 ViewBag.ReturnCount = Count.CountAsync();

我的观点

@ViewBag.ReturnCount  

在运行时但是我回来了

 System.Threading.Tasks.Task`1[System.Int32]

1 个答案:

答案 0 :(得分:1)

当您调用.CountAsync()时,您将返回一个异步Task<T>对象(在这种情况下,Tint,因为这是非异步{{ 1}}方法。

您应该使用以下任一方式:

.Count()

ViewBag.ReturnCount = Count.Count();

(如果您的控制器是异步的)