مهدی هادیان2
چهارشنبه 30 بهمن 1392, 22:22 عصر
بسم الله الرحمن الرحیم
با سلام
کلاس و اینترفیس زیر رو در نظر بگیرید:
// Type: System.Web.Optimization.IBundleOrderer
// Assembly: System.Web.Optimization, Version=1.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
// MVID: 15A75737-7AF9-4DDC-B334-641694E9E409
// Assembly location: E:\TempProject\Barnamenevis\aleki\Mvc4TwitterBootS trapTest\packages\Microsoft.AspNet.Web.Optimizatio n.1.1.2\lib\net40\System.Web.Optimization.dll
using System.Collections.Generic;
namespace System.Web.Optimization
{
public interface IBundleOrderer
{
IEnumerable<BundleFile> OrderFiles(BundleContext context, IEnumerable<BundleFile> files);
}
}
using System.Collections.Generic;
using System.IO;
using System.Web;
using System.Web.Optimization;
namespace Mvc4TwitterBootStrapTest.Helper
{
/// <summary>
/// A custom bundle orderer (IBundleOrderer) that will ensure bundles are
/// included in the order you register them.
/// </summary>
public class AsIsBundleOrderer : IBundleOrderer
{
public IEnumerable<FileInfo> OrderFiles(BundleContext context, IEnumerable<FileInfo> files)
{
return files;
}
}
public static class BundleConfig
{
private static void addBundle(string virtualPath, bool isCss, params string[] files)
{
BundleTable.EnableOptimizations = true;
var existing = BundleTable.Bundles.GetBundleFor(virtualPath);
if (existing != null)
return;
Bundle newBundle;
if (HttpContext.Current.IsDebuggingEnabled)
{
newBundle = new Bundle(virtualPath);
}
else
{
newBundle = isCss ? new Bundle(virtualPath, new CssMinify()) : new Bundle(virtualPath, new JsMinify());
}
newBundle.Orderer = new AsIsBundleOrderer();
foreach (var file in files)
newBundle.Include(file);
BundleTable.Bundles.Add(newBundle);
}
public static IHtmlString AddScripts(string virtualPath, params string[] files)
{
addBundle(virtualPath, false, files);
return Scripts.Render(virtualPath);
}
public static IHtmlString AddStyles(string virtualPath, params string[] files)
{
addBundle(virtualPath, true, files);
return Styles.Render(virtualPath);
}
public static IHtmlString AddScriptUrl(string virtualPath, params string[] files)
{
addBundle(virtualPath, false, files);
return Scripts.Url(virtualPath);
}
public static IHtmlString AddStyleUrl(string virtualPath, params string[] files)
{
addBundle(virtualPath, true, files);
return Styles.Url(virtualPath);
}
}
}
خطای زیر رو میده:
Error 1 'Mvc4TwitterBootStrapTest.Helper.AsIsBundleOrderer ' does not implement interface member 'System.Web.Optimization.IBundleOrderer.OrderFiles (System.Web.Optimization.BundleContext, System.Collections.Generic.IEnumerable<System.Web.Optimization.BundleFile>)' E:\TempProject\Barnamenevis\aleki\Mvc4TwitterBootS trapTest\Mvc4TwitterBootStrapTest\Helper\BundleCon fig.cs 12 18 Mvc4TwitterBootStrapTest
با سپاس
با سلام
کلاس و اینترفیس زیر رو در نظر بگیرید:
// Type: System.Web.Optimization.IBundleOrderer
// Assembly: System.Web.Optimization, Version=1.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
// MVID: 15A75737-7AF9-4DDC-B334-641694E9E409
// Assembly location: E:\TempProject\Barnamenevis\aleki\Mvc4TwitterBootS trapTest\packages\Microsoft.AspNet.Web.Optimizatio n.1.1.2\lib\net40\System.Web.Optimization.dll
using System.Collections.Generic;
namespace System.Web.Optimization
{
public interface IBundleOrderer
{
IEnumerable<BundleFile> OrderFiles(BundleContext context, IEnumerable<BundleFile> files);
}
}
using System.Collections.Generic;
using System.IO;
using System.Web;
using System.Web.Optimization;
namespace Mvc4TwitterBootStrapTest.Helper
{
/// <summary>
/// A custom bundle orderer (IBundleOrderer) that will ensure bundles are
/// included in the order you register them.
/// </summary>
public class AsIsBundleOrderer : IBundleOrderer
{
public IEnumerable<FileInfo> OrderFiles(BundleContext context, IEnumerable<FileInfo> files)
{
return files;
}
}
public static class BundleConfig
{
private static void addBundle(string virtualPath, bool isCss, params string[] files)
{
BundleTable.EnableOptimizations = true;
var existing = BundleTable.Bundles.GetBundleFor(virtualPath);
if (existing != null)
return;
Bundle newBundle;
if (HttpContext.Current.IsDebuggingEnabled)
{
newBundle = new Bundle(virtualPath);
}
else
{
newBundle = isCss ? new Bundle(virtualPath, new CssMinify()) : new Bundle(virtualPath, new JsMinify());
}
newBundle.Orderer = new AsIsBundleOrderer();
foreach (var file in files)
newBundle.Include(file);
BundleTable.Bundles.Add(newBundle);
}
public static IHtmlString AddScripts(string virtualPath, params string[] files)
{
addBundle(virtualPath, false, files);
return Scripts.Render(virtualPath);
}
public static IHtmlString AddStyles(string virtualPath, params string[] files)
{
addBundle(virtualPath, true, files);
return Styles.Render(virtualPath);
}
public static IHtmlString AddScriptUrl(string virtualPath, params string[] files)
{
addBundle(virtualPath, false, files);
return Scripts.Url(virtualPath);
}
public static IHtmlString AddStyleUrl(string virtualPath, params string[] files)
{
addBundle(virtualPath, true, files);
return Styles.Url(virtualPath);
}
}
}
خطای زیر رو میده:
Error 1 'Mvc4TwitterBootStrapTest.Helper.AsIsBundleOrderer ' does not implement interface member 'System.Web.Optimization.IBundleOrderer.OrderFiles (System.Web.Optimization.BundleContext, System.Collections.Generic.IEnumerable<System.Web.Optimization.BundleFile>)' E:\TempProject\Barnamenevis\aleki\Mvc4TwitterBootS trapTest\Mvc4TwitterBootStrapTest\Helper\BundleCon fig.cs 12 18 Mvc4TwitterBootStrapTest
با سپاس