ASP.NET MVC的新手(现在使用MVC3与Razor),我很困惑从Controller传递一个对象到视图。具体来说,我正在尝试使用MVC3和Rob Conery的有趣Massive(http://blog.wekeroad.com/helpy-stuff/and-i-shall-call-it-massive)。我将博客作为一个简单的Web应用程序来进行试验。传递大量列表以查看MVC3
HomeController.cs:
public ActionResult Index()
{
var table = new DynamicModel("mydb", tableName: "Posts");
//grab all the posts
var posts = table.All();
ViewData["Posts"] = posts;
return View();
}
这部分的伟大工程。但我该怎么做?
return View(posts);
如果我在视图中引用@posts.PostID
,它会出错并表示它无效。所以我试着创建一个强大的动态模型视图,但posts
仍然不存在。
我知道我可以创建一个ViewModel并输入视图并在那里插入我的数据。这更多的是了解Controller/View如何交互。
谢谢!
公平不够 - 但如何将'posts'对象传递给部分视图?我创建了一个强类型的视图,它失败了...... – 2011-03-30 13:14:02
你不只是说'DisplayFor'或'EditorFor' – Aliostad 2011-03-30 13:20:46
我从Massive创建了一个强类型的DynamicModel对象视图。我也试图对付我的MVC.Models.Posts对象。然后我运行'返回查看(帖子);'并试图在视图中引用'帖子'。它轰炸了,说'帖子'不存在。 “DisplayFor”和“EditorFor”与此有什么关系?我完全困惑! – 2011-03-30 13:28:43