Linq连接查询显示在MVC视图中

109*_*793 5 c# linq asp.net-mvc join

我正在尝试在部分Web视图中显示linq连接查询.

这是我的控制器中的查询:

public ActionResult InactiveUsers()
        {
            using (ModelContainer ctn = new ModelContainer())
            {
                DateTime duration = DateTime.Now.AddDays(-3);

                var inactive = from usrs in ctn.aspnet_Users
                               where usrs.LastActivityDate <= duration
                               join o in ctn.Groups on
                               usrs.UserId equals o.UserID
                               select new
                               {
                                   usrs.UserName,
                                   usrs.LastActivityDate,
                                   o.PrimaryPhoneNumber,
                               };

                return View(inactive.ToList());
            }

        }
Run Code Online (Sandbox Code Playgroud)

我有点困惑的是接下来要做什么.我熟悉使用模型添加强类型视图,但在我的情况下,我有一个连接查询会发生什么?

如果有人能指出我正确的方向,我将非常感激.

谢谢.

Jac*_*ope 3

您可以为连接结果创建一个类,然后像往常一样为其创建一个模型,而不是返回匿名类型的 IEnumerable:

            var inactive = from usrs in ctn.aspnet_Users
                           where usrs.LastActivityDate <= duration
                           join o in ctn.Groups on
                           usrs.UserId equals o.UserID
                           select new InactiveUser(usrs.UserName, usrs.LastActivityDate, o.PrimaryPhoneNumber);
Run Code Online (Sandbox Code Playgroud)

InactiveUser 类有一个构造函数,该构造函数接受用户名、日期和电话号码。