ในขณะที่คำตอบของ Liviu Costeaนั้นถูกต้อง แต่ก็ยังต้องใช้เวลาพอสมควรในการหาคำตอบว่ามันเป็นอย่างไร นี่คือคำแนะนำทีละขั้นตอนของฉันโดยเริ่มจากโครงการ ASP.NET 4.5.2 MVC ใหม่ คู่มือนี้รวมถึงการจัดการแพ็คเกจฝั่งไคลเอ็นต์โดยใช้ bower แต่ไม่ (ยัง) ครอบคลุมการรวมกลุ่ม / ฮึดฮัด / อึก
ขั้นตอนที่ 1 (สร้างโครงการ)
สร้างโครงการ ASP.NET 4.5.2 ใหม่ (เทมเพลต MVC) ด้วย Visual Studio 2015
ขั้นตอนที่ 2 (ลบ Bundling / Optimization จาก Project)
ขั้นตอนที่ 2.1
ถอนการติดตั้ง Nuget Packages ต่อไปนี้:
- bootstrap
- Microsoft.jQuery.Unobstrusive.Validation
- jQuery.Validation
- jQuery
- Microsoft.AspNet.Web.Optimization
- WebGrease
- Antlr
- Modernizr
- ตอบกลับ
ขั้นตอนที่ 2.2
ลบออกApp_Start\BundleConfig.cs
จากโปรเจ็กต์
ขั้นตอนที่ 2.3
ลบ
using System.Web.Optimization;
และ
BundleConfig.RegisterBundles(BundleTable.Bundles);
จาก Global.asax.cs
ขั้นตอนที่ 2.4
ลบ
<add namespace="System.Web.Optimization"/>
จาก Views\Web.config
ขั้นตอนที่ 2.5
ลบการผูกแอสเซมบลีสำหรับSystem.Web.Optimization
และWebGrease
ออกWeb.config
ขั้นตอนที่ 3 (เพิ่ม bower ในโครงการ)
ขั้นตอนที่ 3.1
เพิ่มpackage.json
ไฟล์ใหม่ในโครงการ ( NPM configuration file
เทมเพลตรายการ)
ขั้นตอนที่ 3.2
เพิ่มbower
ในdevDependencies
:
{
"version": "1.0.0",
"name": "ASP.NET",
"private": true,
"devDependencies": {
"bower": "1.4.1"
}
}
แพ็คเกจ bower จะถูกติดตั้งโดยอัตโนมัติเมื่อpackage.json
ถูกบันทึก
ขั้นตอนที่ 4 (กำหนดค่า bower)
ขั้นตอนที่ 4.1
เพิ่มbower.json
ไฟล์ใหม่ในโครงการ ( Bower Configuration file
เทมเพลตรายการ)
ขั้นตอนที่ 4.2
เพิ่มbootstrap
, jquery-validation-unobtrusive
, modernizr
และrespond
เพื่อการอ้างอิง:
{
"name": "ASP.NET",
"private": true,
"dependencies": {
"bootstrap": "*",
"jquery-validation-unobtrusive": "*",
"modernizr": "*",
"respond": "*"
}
}
แพ็กเกจเหล่านี้และการอ้างอิงจะถูกติดตั้งโดยอัตโนมัติเมื่อbower.json
ถูกบันทึก
ขั้นตอนที่ 5 (แก้ไขViews\Shared\_Layout.cshtml
)
ขั้นตอนที่ 5.1
แทนที่
@Styles.Render("~/Content/css")
ด้วย
<link rel="stylesheet" href="~/wwwroot/lib/bootstrap/dist/css/bootstrap.min.css" />
<link rel="stylesheet" href="~/Content/Site.css" />
ขั้นตอนที่ 5.2
แทนที่
@Scripts.Render("~/bundles/modernizr")
ด้วย
<script src="~/wwwroot/lib/modernizr/modernizr.js" ></script>
ขั้นตอนที่ 5.3
แทนที่
@Scripts.Render("~/bundles/jquery")
ด้วย
<script src="~/wwwroot/lib/jquery/dist/jquery.min.js"></script>
ขั้นตอนที่ 5.4
แทนที่
@Scripts.Render("~/bundles/bootstrap")
ด้วย
<script src="~/wwwroot/lib/bootstrap/dist/js/bootstrap.min.js"></script>
<script src="~/wwwroot/lib/respond/dest/respond.min.js"></script>
ขั้นตอนที่ 6 (แก้ไขแหล่งข้อมูลอื่น)
ในมุมมองอื่น ๆ ทั้งหมดแทนที่
@Scripts.Render("~/bundles/jqueryval")
ด้วย
<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>
ลิงค์ที่มีประโยชน์
การรวมกลุ่มและการลดขนาด
ในความคิดเห็นด้านล่างLavaHotแนะนำให้ใช้ส่วนขยาย Bundler & Minifierแทน Bundler เริ่มต้นซึ่งฉันลบในขั้นตอนที่ 2 นอกจากนี้เขายังแนะนำบทความนี้เกี่ยวกับการรวมกลุ่มกับ Gulp