web-dev-qa-db-fra.com

Caractère générique {version} dans le bundle MVC4

Dans MVC 4, nous avons des bundles. Lors de la définition des ensembles, nous pouvons utiliser des caractères génériques tels que * pour tous les fichiers d'un dossier.

Dans l'exemple ci-dessous, qu'est-ce que -{version} signifier?

public static void RegisterBundles(BundleCollection bundles)
{
    bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
        "~/Scripts/jquery-{version}.js"));
}
152
Ricardo Polo

Le -{version} correspond essentiellement à une version regex , ou pour être précis: (\d+(?:\.\d+){1,3}) .
En utilisant * a tendance à en saisir trop, par exemple si vous regroupez jquery*, cela inclura jquery-ui ainsi que qui pourraient gâcher la commande. Mais en utilisant jquery-{version}.js vous éviterait de devoir mettre à jour la définition de votre ensemble à chaque mise à niveau de jQuery.

Autres choses à noter:

  • {version} ne fonctionne que pour la dernière partie du chemin, c'est-à-dire le nom du fichier, pas un répertoire.
  • les versions multiples de jQuery dans le même dossier seront toutes rattrapées.
175
Hao Kung

Cet ensemble peut contenir des numéros de version dans les noms de script. Ainsi, la mise à jour de jQuery vers une nouvelle version de votre application (via NuGet ou manuellement) ne nécessite aucune modification de code/marquage.

Voir le lien suivant pour plus d'informations sur le bundling: http://weblogs.asp.net/jgalloway/archive/2012/08/16/asp-net-4-5-asp-net-mvc-4- asp-net-web-pages-2-et-visual-studio-2012-web-developer-features.aspx

12
MUG4N

~/Scripts/jquery-{version}.js est inclus. Dans ce cas, le système de regroupement est suffisamment intelligent pour faire référence à la version la plus élevée du fichier jQuery lorsque nous avons spécifié le sélecteur {version} dans le chemin. En outre, ce système de regroupement est suffisamment intelligent pour choisir la version simplifiée du fichier, si celle-ci est disponible dans le chemin défini.

0
leoli