メインメニューを開く

差分

Nancy

2,733 バイト除去, 2014年11月4日 (火) 08:48
==未分類==
===Minify & Bundleを使う===ASP.NET 4から搭載されたMinify & Bundleを[[Mac]]上の[[Mono]]とNancyから使ってみる。 ====NuGetから必要なパッケージを入れる====[[ASP.NET]]関連のほとんどが、いつの間にか[[ASP.NET]]本体から分離されて[[NuGet]]へ移行している。*[[Linux]]上の[[Mono]]でも[[ASP.NET]]を使えという思し召しらしい。[[Xamarin Studio]]からも一発で入る。*https://www.nuget.org/packages/Microsoft.AspNet.Web.Optimization/ ====web.configを編集====<pre><configuration> <configSections> <!-- 追加 --> <section name="razor" type="Nancy.ViewEngines.Razor.RazorConfigurationSection, Nancy.ViewEngines.Razor" /> <!-- 追加 --> </configSections>  <!-- 追加 --> <razor disableAutoIncludeModelNamespace="false"> <assemblies> <add assembly="System.Web.Optimization" /> <add assembly="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> </assemblies> <namespaces> <add namespace="System.Web.Optimization" /> </namespaces> </razor> <!-- 追加 -->  <system.webServer> <!-- 追加 --> <modules runAllManagedModulesForAllRequests="true"> <remove name="BundleModule" /> <add name="BundleModule" type="System.Web.Optimization.BundleModule" /> </modules> <!-- 追加 --> </system.webServer></configuration></pre> ====バンドルを登録する====どこでもいいので登録内容が記述されたメソッドを作る。純正に右に倣えで「App_Start/BundleConfig.cs」にしておくと無難だと思われる。<source lang="csharp">using System;using System.Web.Optimization; namespace Test{ public class BundleConfig { public static void RegisterBundles(BundleCollection bundles) { bundles.Add(new ScriptBundle("~/bundles/jquery").Include( "~/Scripts/jquery-{version}.js")); } }}</source> サーバー起動時に登録する。Global.asax.cs(無ければ作る)のApplication_Startメソッドから上記の登録メソッドを呼び出す。<source lang="csharp">using System;using System.Web.Optimization; namespace Test{ public class Global : System.Web.HttpApplication { protected void Application_Start(Object sender, EventArgs e) { BundleConfig.RegisterBundles(BundleTable.Bundles); } }}</source> ====Scripts.Renderの違い====ASP.NET 4で標準の記述方法が使えない。 @Scripts.Render("~/bundles/jquery")以下を使うことで代用する。 @Html.Raw(Scripts.Render("~/bundles/jquery").ToString())ToStringを忘れると[[RazorMinify & Bundleを使う]]が落ちる。凄い嵌った。
==関連項目==
匿名利用者