我正在查看ASP.NET MVC的新版本(如果您还没有看到它,请参阅此处以了解更多详细信息),并且我遇到了一些显示对象的内容。ASP.NET MVC 2 DisplayFor()
在我的控制中,我有一个Person
类型的对象,我将它传递给ViewData.Model
中的视图。目前为止都很好,我可以在视图中提取对象以供显示。我不明白的是,我需要调用Html.DisplayFor()
方法来获取数据。我试过下面...
<%
MVC2test.Models.Person p = ViewData.Model as MVC2test.Models.Person;
%>
// snip
<%= Html.DisplayFor(p => p) %>
,但我得到了以下信息:
CS0136:命名为“P”的局部变量不能在此范围内声明,因为它会给出不同的意思是'p',它已经在'父母或当前'范围内用于表示别的东西
我知道这不是我应该做的 - 我知道重新定义变量会产生这个错误,但我不知道如何从控制器访问对象。所以我的问题是,如何将对象传递给视图以显示其属性?
N.B.我应该补充一点,在有限的空余时间里,我正在阅读这篇文章,所以完全有可能我错过了一些基本的东西。
TIA
谢谢你。当我回到办公室时,我会明天再来一次。 :) – ZombieSheep 2009-09-23 18:06:35
优秀的答案。谢谢,它的工作(但你已经知道,是不是?)) – ZombieSheep 2009-09-24 07:50:02
其实,我没有。好吧,不完全是。 我目前正在学习ASP.NET MVC 1.0的过程,但是我已经阅读了一些关于2.0的文章,并且记得阅读Html.DisplayFor上的一些内容;一些谷歌搜索帮助实际的语法和whatnot :) – AASoft 2009-09-24 21:04:44