Как создать страницу со строго типизированным представлением, используя ASP.NET MVC VB.NET XML Literals View Engine?
Я использую движок представления ASP.NET MVC VB.NET XML Literals, созданный Дмитрием Робсманом и описанный в его блоге в этом посте.
Я хотел бы создать страницы со строго типизированным представлением, используя этот механизм представления, но он не содержит требуемого универсального типа VbView(Of TModel), с помощью которого я бы создал такой класс представления.
Конечный результат должен выглядеть примерно так:
Namespace Views.Client
Public Class Details(Of Models.Client)
Inherits SiteMaster
Public Overrides Function RenderContent() As XElement
Return _
<fieldset>
<legend>Fields</legend>
<p>
FirstName:
<%= Xhtml.Encode(Model.FirstName) %>
</p>
<p>
MiddleName:
<%= Xhtml.Encode(Model.MiddleName) %>
</p>
<p>
LastName:
<%= Xhtml.Encode(Model.LastName) %>
</p>
<fieldset>
End Function
End Class
End Namespace
Когда появится класс VbView(Of TModel), унаследованный от класса Дмитрия VbView, мне понадобится помощь, чтобы выяснить, как его подключить, чтобы он работал со стандартными контроллерами MVC, которые вызывают представление таким образом.
Function Details(ByVal id As Integer) As ActionResult
Dim c = SomeGetClientFunction(id)
Return View(c)
End Function
1 ответ
Я скачал исходный код ASP.NET MVC C# и смог выяснить, как создать класс VbView(Of TModel), отразив часть этой структуры. Я создал проект на CodePlex, который содержит этот новый класс и пару других изменений, которые улучшают то, что сделал Дмитрий. http://vbmvc.codeplex.com/