2011-11-02 62 views
0

我一直在閱讀各種關於如何處理複雜類型的博客文章,其中包括大多數人似乎都鏈接的brad wilson文章。但我真的不明白。我正在使用EF代碼第一次開發,MVC和VB。從我迄今爲止讀取的呈現複雜類型的編輯器字段需要一個自定義對象,對吧?不過,我真的不明白我需要將什麼代碼放入自定義模板。有人能爲我分解哪些代碼需要進入自定義模板,所以我可以爲PostTags icollection渲染一個文本框?呈現複雜類型的文本框?

我的課:

Public Class Post 
    Inherits EntityBase 

    <Key()> Property PostId As Integer 
    <DisplayName("Title")> <Required()> Property PostTitle As String 
    <UIHint("MultilineText")> <DisplayName("Text")> Property PostText As String 

    ReadOnly Property PostExcerpt As String 
     Get 
      If PostText.Length > 100 Then 
       Return Helpers.TruncateHelper.TruncateAtWord(PostText, 250) 
      Else : Return PostText 
      End If 
     End Get 
    End Property 

    <ScaffoldColumn(False)> Property PostDateCreated As DateTime 
    <ScaffoldColumn(False)> Property PostDateModified As DateTime? 
    <ScaffoldColumn(False)> Property PostDatePublished As DateTime? 

    <DisplayName("Publish?")> Property PostIsPublished As Boolean 
    <DisplayName("Allow Comments?")> Property CommentsAllowed As Boolean 
    <ScaffoldColumn(False)> Property CategoryId As Integer? 
    <UIHint("Text")> <DisplayName("Category")> <Required()> Property PostCategory As String 
    Property Comments As IList(Of Comment) 

    'Post has collection of Tags 
    <DisplayName("Tags (comma separated)")> Overridable Property PostTags As ICollection(Of Tag) 
End Class 


    Public Class Tag 
    Dim _rdsqlconn As RDSQLConn 

    <Key()> Property TagId As Int32 
    Property PostId As Int32 
    Property TagWord As String 

    'Overridable property to access Post 
    Overridable Property Post As Post 

End Class  

回答

0

解決。

在EditorTemplates文件夾中創建模板Tags.vbhtml並應用於PostTag。該模板具有顯示在視圖中的文本框。