Pregunta

he propuesto lo que creo que es una mejor sintaxis de puntos de vista ASP.NET MVC en esta pregunta . Desde esa pregunta ha sido contestada, creo que mi respuesta va a generar poca retroalimentación, así que estoy publicando como su propia pregunta aquí.

¿Fue útil?

Solución

Usted está en el camino correcto, pero creo que fue demasiado lejos. El equilibrio está mezclando el código con el html donde fluye y no sobre lo que complica y también no crear sopa etiqueta. El mejor motor de vista que he encontrado que hace esto es rel="nofollow href="http://dev.dejardin.org/" Spark .

Tome una mirada en ella y encontrará que se ocupa de lo que usted propone de una manera más sutil y de fácil lectura.

Otros consejos

Se utiliza para representar el marcado de código. Mi opinión es: donde se necesita el código, simplemente use el código, que siempre es más flexible. Cuando se necesita marcado, utilice el marcador. En este artículo se explica precisamente mi punto. A veces la línea entre el código y el margen de beneficio es borrosa, sin embargo.

Me gustaría que la gente dejara de tratamiento de XML como un lenguaje de programación.

Tal vez deberías usar esta "sintaxis MVC" en lugar, llamado HAML.

%h2= Model.CategoryName
%ul
  - foreach (var product in Model.Products)
    %li
      = product.ProductName 
      .editlink
        = Html.ActionLink("Edit", new { Action="Edit", ID=product.ProductID })
= Html.ActionLink("Add New Product", new { Action="New" })

reemplaza

<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" AutoEventWireup="true" 
    CodeBehind="List.aspx" Inherits="MvcApplication5.Views.Products.List" Title="Products" %>
<asp:Content ContentPlaceHolderID="MainContentPlaceHolder" runat="server">
 <h2><%= ViewData.Model.CategoryName %></h2>
  <ul>
    <% foreach (var product in ViewData.Model.Products) { %>
      <li>
        <%= product.ProductName %> 
        <div class="editlink">
          (<%= Html.ActionLink("Edit", new { Action="Edit", ID=product.ProductID })%>)
        </div>
      </li>
    <% } %>
  </ul>
  <%= Html.ActionLink("Add New Product", new { Action="New" }) %>
</asp:Content>

También echa un vistazo a JSP: tenían que introducir un "lenguaje de expresión" con el fin de conseguir un poco de la potencia de código en el marcado JSP. El resultado es realmente mi humilde opinión incómoda. Incluso se necesita una asignación explícita (en XML, por supuesto) para acceder a una función simple de este lenguaje de expresión.

este .

Además de maucsch y puntos de Matt, ¿no sería esto también significa que el servidor tendría que cargar en la memoria y analizar toda la página en busca de "MVC:"? Y no es que una de las razones para no utilizar formularios web?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top