MVC 3从不同控制器的索引视图引用视图

时间:2012-06-09 13:50:30

标签: asp.net asp.net-mvc-3 views partial

我是MVC的新手,我目前正在学习asp.net MVC 3,“仍在上学”。在我的家庭控制器的索引页面上,我想显示来自我的新闻模型的新闻项目。我确信有一种简单的方法可以使用部分视图来执行此操作,但到目前为止,每次我尝试使用默认的脚手架列表模板来创建视图时,我总是会得到一个空引用错误。我想知道是否有人有一个很好的例子或有用的步骤我可以使用。我首先创建了数据库,因此使用的是Entity框架。提前致谢。 这是我的主页的控制器:

public class HomeController : Controller
    {


        public ActionResult Index()
        {
            return View();
        }


        public ActionResult About()
        {
            return View();
        }


    }

这是它的观点:

@{
    ViewBag.Title = "Index";
}

<h2>Index</h2>

以下是我的论坛的控制器:

public class ForumController : Controller
    {
        private OEPEntities db = new OEPEntities();

        //
        // GET: /Forum/

        public ViewResult Index()
        {
            return View(db.Fora.ToList());
        }

        //
        // GET: /Forum/Details/5

        public ViewResult Details(int id)
        {
            Forum forum = db.Fora.Find(id);
            return View(forum);
        }

        //
        // GET: /Forum/Create

        public ActionResult Create()
        {
            return View();
        } 

        //
        // POST: /Forum/Create

        [HttpPost]
        public ActionResult Create(Forum forum)
        {
            if (ModelState.IsValid)
            {
                db.Fora.Add(forum);
                db.SaveChanges();
                return RedirectToAction("Index");  
            }

            return View(forum);
        }

        //
        // GET: /Forum/Edit/5

        public ActionResult Edit(int id)
        {
            Forum forum = db.Fora.Find(id);
            return View(forum);
        }

        //
        // POST: /Forum/Edit/5

        [HttpPost]
        public ActionResult Edit(Forum forum)
        {
            if (ModelState.IsValid)
            {
                db.Entry(forum).State = EntityState.Modified;
                db.SaveChanges();
                return RedirectToAction("Index");
            }
            return View(forum);
        }

        //
        // GET: /Forum/Delete/5

        public ActionResult Delete(int id)
        {
            Forum forum = db.Fora.Find(id);
            return View(forum);
        }

        //
        // POST: /Forum/Delete/5

        [HttpPost, ActionName("Delete")]
        public ActionResult DeleteConfirmed(int id)
        {            
            Forum forum = db.Fora.Find(id);
            db.Fora.Remove(forum);
            db.SaveChanges();
            return RedirectToAction("Index");
        }

        protected override void Dispose(bool disposing)
        {
            db.Dispose();
            base.Dispose(disposing);
        }
    }

我想要做的是在我的主页视图上显示一个论坛列表,该列表将链接到每个论坛的详细信息。

0 个答案:

没有答案