Si bien la respuesta de Liviu Costea es correcta, todavía me tomó bastante tiempo descubrir cómo se hace realmente. Así que aquí está mi guía paso a paso a partir de un nuevo proyecto ASP.NET 4.5.2 MVC. Esta guía incluye la administración de paquetes del lado del cliente usando bower pero (todavía) no cubre empaquetado / gruñido / trago.
Paso 1 (crear proyecto)
Cree un nuevo proyecto ASP.NET 4.5.2 (plantilla MVC) con Visual Studio 2015.
Paso 2 (Eliminar agrupación / optimización del proyecto)
Paso 2.1
Desinstale los siguientes paquetes de Nuget:
- oreja
- Microsoft.jQuery.Unobstrusive.Validation
- jQuery.Validation
- jQuery
- Microsoft.AspNet.Web.Optimization
- WebGrease
- Antlr
- Modernizr
- Responder
Paso 2.2
Eliminar App_Start\BundleConfig.csdel proyecto.
Paso 2.3
Eliminar
using System.Web.Optimization;
y
BundleConfig.RegisterBundles(BundleTable.Bundles);
de Global.asax.cs
Paso 2.4
Eliminar
<add namespace="System.Web.Optimization"/>
de Views\Web.config
Paso 2.5
Quitar enlaces de ensamblaje para System.Web.Optimizationy WebGreasedeWeb.config
Paso 3 (agregar bower al proyecto)
Paso 3.1
Agregar nuevo package.jsonarchivo al proyecto ( NPM configuration fileplantilla de elemento)
Paso 3.2
Agregar bowera devDependencies:
{
  "version": "1.0.0",
  "name": "ASP.NET",
  "private": true,
  "devDependencies": {
    "bower": "1.4.1"
  }
}
El paquete bower se instala automáticamente cuando package.jsonse guarda.
Paso 4 (Configurar bower)
Paso 4.1
Agregar nuevo bower.jsonarchivo al proyecto ( Bower Configuration fileplantilla de elemento)
Paso 4.2
Añadir bootstrap, jquery-validation-unobtrusive, modernizry respondde dependencias:
{
  "name": "ASP.NET",
  "private": true,
  "dependencies": {
    "bootstrap": "*",
    "jquery-validation-unobtrusive": "*",
    "modernizr": "*",
    "respond": "*"
  }
}
Estos paquetes y sus dependencias se instalan automáticamente cuando bower.jsonse guarda.
Paso 5 (modificar Views\Shared\_Layout.cshtml)
Paso 5.1
Reemplazar
@Styles.Render("~/Content/css")
con
<link rel="stylesheet" href="~/wwwroot/lib/bootstrap/dist/css/bootstrap.min.css" />
<link rel="stylesheet" href="~/Content/Site.css" />
Paso 5.2
Reemplazar
@Scripts.Render("~/bundles/modernizr")
con
<script src="~/wwwroot/lib/modernizr/modernizr.js" ></script>
Paso 5.3
Reemplazar
@Scripts.Render("~/bundles/jquery")
con
<script src="~/wwwroot/lib/jquery/dist/jquery.min.js"></script>
Paso 5.4
Reemplazar
@Scripts.Render("~/bundles/bootstrap")
con
<script src="~/wwwroot/lib/bootstrap/dist/js/bootstrap.min.js"></script>
<script src="~/wwwroot/lib/respond/dest/respond.min.js"></script>
Paso 6 (modificar otras fuentes)
En todas las demás vistas, reemplace
@Scripts.Render("~/bundles/jqueryval")
con
<script src="~/wwwroot/lib/jquery-validation/dist/jquery.validate.min.js"></script>
<script src="~/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js"></script>
Enlaces útiles
Agrupación y minificación
En los comentarios a continuación, LavaHot recomienda la extensión Bundler & Minifier como reemplazo del empaquetado predeterminado que elimino en el paso 2. También recomienda este artículo sobre empaquetado con Gulp.
     
                
bower.jsonarchivo a través de Visual Studio 2015, también creará automáticamente unbowerrcarchivo, que anula la ubicación predeterminada para las instalaciones de Bower desdebower_componentshastawwwroot/libEn realidad, no es muy diferente. Es solo que hay un mejor soporte para todos estos dentro de Visual Studio, por ejemplo, cuando agrega nuevos elementos, tiene plantillas para archivos de configuración de bower o npm. También tiene plantillas para archivos de configuración gulp o grunt.
Pero la llamada de tareas grunt / gulp y su vinculación para crear eventos aún se realiza con Task Runner Explorer, al igual que en VS 2013.
fuente