2012-10-06 33 views
9

Tôi đã tạo ứng dụng web ASP.NET MVC 3 mặc định. Sau đó, tôi thêm ba css và ba file js để \ Views \ Shared_Layout.cshtml xem:Kết hợp và rút gọn JS và CSS trong ASP.NET MVC

<!DOCTYPE html> 
<html> 
<head> 
    <title>@ViewBag.Title</title> 
    <link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" /> 
    <link href="@Url.Content("~/Content/StyleSheet1.css")" rel="stylesheet" type="text/css" /> 
    <link href="@Url.Content("~/Content/StyleSheet2.css")" rel="stylesheet" type="text/css" /> 

    <script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")" type="text/javascript"></script> 
    <script src="@Url.Content("~/Scripts/JScript1.js")" type="text/javascript"></script> 
    <script src="@Url.Content("~/Scripts/JScript2.js")" type="text/javascript"></script> 

</head> 
<body> 
    <div class="page"> 
     <div id="header"> 

....

khi tôi chạy các ứng dụng, tôi html code đang

<!DOCTYPE html> 
<html> 
<head> 
    <title>Home Page</title> 
    <link href="/Content/Site.css" rel="stylesheet" type="text/css" /> 
    <link href="/Content/StyleSheet1.css" rel="stylesheet" type="text/css" /> 
    <link href="/Content/StyleSheet2.css" rel="stylesheet" type="text/css" /> 

    <script src="/Scripts/jquery-1.5.1.min.js" type="text/javascript"></script> 
    <script src="/Scripts/JScript1.js" type="text/javascript"></script> 
    <script src="/Scripts/JScript2.js" type="text/javascript"></script> 

</head> 
<body> 
    <div class="page"> 

Có thể có một trình xử lý trong MVC để thay đổi html đầu ra của tôi thành:

<!DOCTYPE html> 
    <html> 
    <head> 
     <title>Home Page</title> 
     <script src="js.axd=/Scripts/jquery-1.5.1.min.js,/Scripts/JScript1.js,/Scripts/JScript2.js" type="text/javascript"></script> 
     <link href="css.axd=/Content/Site.css,/Content/StyleSheet1.css,/Content/StyleSheet2.css" rel="stylesheet" type="text/css" /> 
    </head> 
    <body> 
     <div class="page"> 

Vì vậy, liên kết js.axd=/Scripts/jquery-1.5.1.min.js,/Scripts/JScript1.js,/Scripts/JScript2.js sẽ trả lại nội dung của tất cả các tệp js này cho trình duyệt và liên kết css.axd=/Content/Site.css,/Content/StyleSheet1.css,/Content/StyleSheet2.css sẽ trả lại nội dung của tất cả các tệp css.

Tôi đã làm điều gì đó trước đó trong ASP.NET bởi IHttpHandler, nhưng không thể tìm ra cách để làm điều đó trong MVC, kể từ khi tôi chỉ khởi động trong MVC.

Bất kỳ mẫu trợ giúp và mã nào sẽ đánh giá cao. Cảm ơn bạn!

Trả lời

0

tôi sử dụng cassette trong các dự án của riêng tôi. Ngoài ra, danh sách này here chứa 20 vị trí hàng đầu trong Nuget.

Các vấn đề liên quan