/ / Définition d’un alias pour une classe avec Razor - c #, asp.net-mvc, asp.net-mvc-3, razor

Définir un alias pour une classe avec Razor - c #, asp.net-mvc, asp.net-mvc-3, razor

Dans un code C # normal, je peux utiliser une instruction using pour définir un alias pour un nom de classe, par exemple.

using MyAlias = Some.Long.Namespace.Class;

J'ai essayé la même chose dans une vue rasoir, une approche naïve comme

@using MyAlias = Some.Long.Namespace.Class

ne marche pas. Y a-t-il un moyen d'obtenir le même effet?

Réponses:

11 pour la réponse № 1

Pourquoi voudriez-vous faire ça? Quelle que soit la raison pour laquelle vous en avez besoin, il existe probablement un meilleur moyen. Vous devriez de toute façon éviter d’écrire du code C # dans une vue Razor, vous n’en auriez donc pas besoin. Tout ce dont vous avez besoin dans une vue Razor est l’espace de noms de votre modèle de vue, car c’est tout ce qu’une vue doit manipuler.

@model MyViewModel
...

Laissez les alias et le code C # à leur place - contrôleurs, modèles, assistants, ...

Tout cela étant dit, les alias devraient fonctionner. Par exemple, la vue suivante fonctionne parfaitement pour moi:

@using foo = System.IO;
<div>
@foo.Path.GetFileName(@"c:workfoo.txt")
</div>