6

ASP.NET MVC 4.5 のバンドルと縮小が大好きで、よく使用しています。

ただし、1 つの小さな問題は、"プラグイン" が、私の Visual Studio ソリューションの別のプロジェクトにある Cookie のないドメインでホストされていることです。

私たちのメイン サイトが、Cookie を使用しないサイトから、任意の数のプラグインを含む、バンドルされ縮小された JS ファイルを要求できるようにするソリューションを探しています。何かのようなもの:

http://my.cookieless.domain/plugins.js?include=alpha&include=bravo,charlie

これまでのところ、私が見つけることができる最善の解決策は、サード パーティのバンドルおよびミニフィケーション ライブラリを使用することです。

コントローラー アクション内から ASP.NET のバンドル/縮小プロセスを手動で呼び出すことはできますか?

public JavaScriptResult Index(IList<string> include)
{
    //bundle and minify JS
}
4

1 に答える 1

5

似たようなものを探してこれに出くわしました。ここに解決策があります:

public ActionResult DynamicJs()
{
      // Obviously this will be dynamically generated
      string javaScript = new Minifier().MinifyJavaScript("alert('Hello world!');");

      //returns minified javaScript
      return JavaScript(javaScript);
}

CSSも同様です。あなたは使用したいかもしれません:

 new Minifier().MinifyStyleSheet(styleSheet, new CssSettings { ColorNames = CssColor.Hex }

Minifier クラスは、WebGrease Nuget パッケージから取得できるMicrosoft.Ajax.Utilitiesのメンバーです。

于 2016-03-07T18:41:09.723 に答える