将1个viewbag 2列表传递给1个视图

时间:2014-05-05 12:17:34

标签: c# asp.net-mvc list viewbag

我想在一个页面(仪表板页面)中显示个人信息,最近约会和传入约会。这是我的控制器我收到错误“检测到无法访问的代码”

using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.Mvc;

    namespace DentAppSys.Controllers
    {
        public class PatientController : Controller
        {
            //
            // GET: /Patient/
            public ActionResult Index()
            {
                if (Session["UserEmail"] != null)
                {
                    string Email = (string)Session["UserEmail"];

                    using (var db = new MaindbModelDataContext())
                    {
                        var patient = db.Patients.FirstOrDefault(u => u.Email == (String)Session["UserEmail"]);
                        ViewBag.FirstName = patient.Name;
                        ViewBag.LastName = patient.Surname;
                        ViewBag.BirthDate = patient.Birthday;
                        ViewBag.Email = patient.Email;


                    }

                    using (var db = new MaindbModelDataContext())
                    {
                        var patient = db.Patients.FirstOrDefault(u => u.Email == (String)Session["UserEmail"]);
                        var listincoming = (from y in db.Appointments
                                          where y.PatientNo == patient.PatientNo
                                          where y.Date > DateTime.Today
                                          orderby y.Date descending
                                          select y).Take(5);

                        var TempIncoming = new List<Models.AppModel>();
                        foreach (var item in listincoming)
                        {
                            var Temp = new Models.AppModel();
                            Temp.AppNo= item.AppNo;
                            Temp.PatientNo = (Int32)item.PatientNo;
                            Temp.Date = (DateTime)item.Date;
                            Temp.Status = item.Status;
                            Temp.Description = item.Description;
                            TempIncoming.Add(Temp);


                        }
                        return View(TempIncoming);
                    }

                    using (var db = new MaindbModelDataContext())
                    {
                        var patient = db.Patients.FirstOrDefault(u => u.Email == (String)Session["UserEmail"]);
                        var listrecent = (from y in db.Appointments
                                          where y.PatientNo == patient.PatientNo
                                          where y.Date < DateTime.Today
                                          orderby y.Date descending
                                          select y).Take(5); 

                        var TempRecent = new List<Models.AppModel>();
                        foreach (var item in listrecent)
                        {
                            var Temp = new Models.AppModel();
                            Temp.AppNo = item.AppNo;
                            Temp.PatientNo = (Int32)item.PatientNo;
                            Temp.Date = (DateTime)item.Date;
                            Temp.Status = item.Status;
                            Temp.Description = item.Description;
                            TempRecent.Add(Temp);

                        }
                        return View(TempRecent);
                    }

                }

                else
                {
                    return RedirectToAction("RegAndLogin", "User");
                }
            }

        }
    }

这是我的模型传递两个列表来查看

namespace DentAppSys.Models
{
    public class RecentIncoming {


            public IEnumerable<DentAppSys.Models.AppModel> RecentAppts {get; set;}
            public IEnumerable<DentAppSys.Models.AppModel> IncomingAppt {get; set;}

     }

        }

1 个答案:

答案 0 :(得分:2)

删除双重部分后错误应该消失。