7
votes

Est-il possible de construire une application ASP MVC sans cordes magiques en vues?

Je suis très nouveau à Asp .NET MVC, j'ai acheté le livre Frame-cadre Pro ASP .NET MVC de APRY la semaine dernière et il est prouvé d'être très utile.

Le problème que je vois jusqu'à présent est que Presque toutes les opinions d'exemple sont criblées de chaînes magiques. J'ai réussi à traverser et à comprendre quelques alternatives, mais le code commence à obtenir un peu difficile à lire. Par exemple: P>

<% using (Html.BeginForm<CartController>(c => c.RemoveFromCart(null, line.Product.ProductID, (string)ViewData["returnUrl"]))) { %>
    <input type="submit" value="Remove" />
<% } %>


2 commentaires

Vues fortement dactylographiées, avec vue de vue de style Thunderdome pour chaque vue.


Je suis d'accord, les vues fortement tapées sont les meilleures bangs pour l'argent.


4 Réponses :


1
votes

Je pense que vous le savez peut-être déjà, mais nous pouvons certainement créer des points de vue fortement dactylographiés qui nous permettraient d'utiliser le format HTML.ENCODE (MODER.PROPERTYNAME) dans la vue. Voici un lien qui explique ce

http : //blogs.lesssthandot.com/index.php/webdev/webdesigngraphicsstyling/me-and-asp-net-mvc-less-magic-strings .


0 commentaires

4
votes

J'ai lu avec intérêt ce blog post de Lostechies:
une nouvelle race de chaînes magiques dans ASP.NET MVC

Ils suggèrent de changer ceci: P>

public static implicit operator RouteValueDictionary(ParamBuilder paramBuilder)
{
    var values = new Dictionary<string, object>();

    if (paramBuilder._product != null)
    {
        values.Add("p", paramBuilder._product.Id);
    }

    if (paramBuilder._product != null)
    {
        values.Add("c", paramBuilder._customer.Id);
    }

    return new RouteValueDictionary(values);
}


0 commentaires

6
votes

En utilisant T4MVC et les futurs MVC, vous pouvez facilement éliminer 99% des chaînes magiques.

Ces deux projets sont disponibles chez http://aspnet.codeplex.com /Release/projectrelases.aspx?ReleaseID=24471

T4MVC s'occupera de contrôleurs, d'actions et de routage, tandis que les trucs à terme ont des aides HTML fortement dactylographiés. Le projet MVCCONTRIB est un autre projet à regarder, car il inclut des constructeurs HTML fluides fortement typés.


0 commentaires

0
votes

Je recommanderais vivement cette lecture - c'est court et résume toutes les bases de manière très claire. Il a été écrit par Scott Guthrie, qui est le PM .Net MVC, entre autres choses dans MS: http://weblogs.asp.net/scottgu/archive/2009/04/28/free-asp-net-mvc- Nerddinner-Tutorial-Now-in-html.aspx


0 commentaires