8

この質問に対する適切な答えが見つかりません。他にも同様の質問がいくつかありますが、適切な回答が得られません。

Visual Studio で、アプリケーションの公開時に圧縮する必要があるすべてのファイル (HTML、XML、CSS) を自動的に圧縮する方法はありますか?

サーバー上に余分な空白、コメント、その他のものをすべて持つのは、少し無意味で無駄に思えます。さまざまな拡張機能と NuGet パッケージを探しましたが、解決策を提供してくれるものは見つかりませんでした。

4

4 に答える 4

6

Cassetteのようなものが必要です。

Cassette は、すべての JavaScript、CoffeeScript、CSS、LESS、Sass、および HTML テンプレートを自動的に並べ替え、連結、縮小、キャッシュ、およびバージョン管理します。

使い方はとても簡単で、ドキュメントを読むだけです。セットアップには最大で 5 分かかります。

インストールするには、NuGet パッケージ コンソールを開き、次のように入力します。

Install-Package Cassette.Web

これにより、インストールと設定が行われます。

ヘルプや提案が必要な場合は、Google グループをチェックしてください。

http://groups.google.com/group/cassette


SquishIt を使用するオプションもあります。MVC3 で正常に動作し、カセットと同じ目的を果たします。でも、個人的にはカセットの方が好きです。

http://lostinthegc.wordpress.com/2012/01/14/using-squishit-in-an-asp-net-mvc3-web-application/

于 2012-07-13T00:28:02.973 に答える
4

もう 1 つの便利なツールはChirpyです。2010 年までは VS で使用していました。単純な XML ファイルでバンドルを定義しています。VS に統合されるため、ファイル (css、less、js など) が変更された場合、縮小されたバージョンがバックグラウンドで自動的に (再) レンダリングされます。

http://www.weirdlover.com/2010/05/22/visual-studio-add-in-for-dotless-js-and-css-files/

次のサンプル ファイル (.chirp.config) では、特定の CSS ファイルがバンドルされ、external.min.cssinternal.min.cssという名前の 2 つのファイルに縮小されます。

<?xml version="1.0"?>
<root>
  <FileGroup Name="external.css">
    <File Path="css/jquery.ui.core.css" />
    <File Path="css/jquery.ui.theme.css" />
    <File Path="css/jquery.ui.button.css" />
    <File Path="css/default.css" />
  </FileGroup>
  <FileGroup Name="internal.css">
    <File Path="css/jquery.ui.core.css" />
    <File Path="css/jquery.ui.theme.css" />
    <File Path="css/jquery.ui.autocomplete.css" />
    <File Path="css/jquery.ui.progressbar.css" />
    <File Path="css/jquery.ui.accordion.css" />
    <File Path="css/default.css" />
    <File Path="css/datatables.css" />
  </FileGroup>
</root>
于 2012-10-17T13:26:18.540 に答える
1

Nuget でWebMarkupMinパッケージを使用しています。プログラムで HTML 出力を生成するときに使用する非常に優れた HTML ミニファイアがあります。

var htmlMinifier = new HtmlMinifier();
var result = htmlMinifier.Minify(myHTML, generateStatistics: false);
Console.WriteLine(result.MinifiedContent);
于 2014-02-14T01:43:46.500 に答える