2012-03-07 23 views
1

大家早上好。不知道如何在视图中显示数据(初学者)

我是.Net语言的初学者,需要一个能够走得更远的例子。

因此,我的目标是显示数据表中的日期和评论,以下是有关客户端的一般信息。

的观点必须成为这样的事情:

名姓: 地址: 电话号码: ...

日期1 注释1

date2的 注释2 ...

很容易自动生成与gen的强类型视图口头数据。现在,我不知道如何显示下面的评论。

以下是我已经完成到控制器

' GET: /Contacts/Details/5 

    Function Details(id As Integer) As ActionResult 
     Dim contact As contact = db.contact.Single(Function(c) c.idContact = id) 
     Dim listMeet = New List(Of meeting) 
     listMeet = (From d In db.meeting 
        Where d.FK_meet_contact = id 
        Select d).ToList() 
     ViewBag.listeMeeting = listMeet 
     Return View(contact) 
    End Function 

到视图,I DIS很多错误的东西......让我们告诉你的最后一个:

@ModelType MvcApplication4.contact 
@Code 
    ViewData("Title") = "Details" 
    Dim list As List(Of Object) = ViewBag.listeMeeting 
    Dim ligne As ListItemCollection 

End Code 

[ ...]

<fieldset> 
    <legend><button onclick="togglefield('Meet')">Meetings</button></legend> 
    <div class="Meet"> 

    @For Each ligne In ViewBag.listeMeeting 
     @Html.Raw(ViewBag.listeMeeting) 
    Next (ligne) 

    </div> 
</fieldset> 

我还没有很好的理解?

PS:我不是以英语为母语,所以,对不起,如果我的英语很烂

回答

1

你可以使用一个视图模型,而不是ViewBag

Public Class MyViewModel 
    Public Property ContactDetails As Contact 
    Public Property Meetings As IEnumerable(Of Meeting) 
End Class 

,然后填充在这个视图模型控制器并传递给视图显示:

Function Details(id As Integer) As ActionResult 
    Dim contact As contact = db.contact.Single(Function(c) c.idContact = id) 
    Dim meetings = 
     (From d In db.meeting 
     Where d.FK_meet_contact = id 
     Select d).ToList() 

    Dim model = New MyViewModel With { 
     .ContactDetails = contact, 
     .Meetings = meetings 
    } 
    Return View(model) 
End Function 

,然后让你的视图强类型的视图模型:

@ModelType AppName.MyViewModel 

<h2>@Model.ContactDetails.SomePropertyOfContact</h2> 

<fieldset> 
    <legend> 
     <button onclick="togglefield('Meet')">Meetings</button> 
    </legend> 
    <div class="Meet"> 
     @For Each meeting In Model.Meetings 
      @meeting.SomePropertyOfMeeting 
     Next 
    </div> 
</fieldset> 
+0

非常非常好的答案......它是100%的功能,因为它是。这完全是我所需要的。 – 2012-03-07 13:21:35