2010-01-18 7 views
0

Si j'ai une vue fortement typée, par ex. Inherits = "System.Web.Mvc.ViewPage>"%> Et je veux afficher la liste des éléments dans le modèle, lorsque j'utilise "Ajouter vue" dans Visual Studio, je reçois le code html ci-dessous. Y a-t-il moyen d'éliminer la chaîne magique "Version" lors de la sortie des en-têtes de colonne de table?Cordes Asp.net MVC Magic - éliminer

<table> 
    <tr> 
     <th> 
      Version 
     </th> 
    </tr> 
    <% foreach (var item in Model) { %> 
    <tr> 
     <td> 
      <%= Html.Encode(item.Version) %> 
     </td> 
    <tr/> 
    <% } %> 
</table> 
+1

Bien que je ne vois pas ce qui rend cette chaîne "magique", je crois qu'elle peut être supprimée en tapant simplement 7 fois en arrière. –

Répondre

1

Qu'aimeriez-vous avoir à la place?

Vous pouvez utiliser des fichiers de ressources afin qu'ils soient traduits ou quelque chose .. Ou s'il doit être le nom de l'élément. Variable de version, vous pouvez probablement regarder dans une réflexion.

+0

J'espérais que vous pourriez utiliser une aide html fortement typée pour éviter les problèmes de chaînes magiques, par exemple pour un seul article de la liste <% = Html.TextBoxFor (model => model.Version)%> – Noel

0

Si vous avez vos contrôleurs et vues dans le projet web, il suffit d'ajouter des fichiers de ressources (.resx) à App_GlobalResources (ou App_LocalResources par rapport à la vue, bien que je ne suis pas un fan de cela), puis référence les ressources de vues yoru.

Personnellement, je crée un projet "Resources" qui contient un tas de fichiers de ressources (.resx). Chaque resx est défini sur public (liste déroulante en haut du concepteur). De cette façon, ils peuvent être accessibles à partir de Vues dans le projet Web ou des contrôleurs/services d'application dans mes autres projets. Cela dit, à moins que le partage de la copie ou de la traduction ne vous préoccupe, vous pouvez laisser la copie dans les vues sous la forme d'une "chaîne magique".