سلام
میخوام کدهای اچ تی ام ال سایت رو فشرده کنم. روشهای مختلفی داره. تو ناگت پکیج WebMarkupMin رو پیدا کردم اما نتونستم ازش درست استفاده کنم.
دوستان کسی نحوه استفاده از این پکیج رو میدونه؟
با تشکر
Printable View
سلام
میخوام کدهای اچ تی ام ال سایت رو فشرده کنم. روشهای مختلفی داره. تو ناگت پکیج WebMarkupMin رو پیدا کردم اما نتونستم ازش درست استفاده کنم.
دوستان کسی نحوه استفاده از این پکیج رو میدونه؟
با تشکر
سلام.
در asp mvc بطور پیش فرض با روش gzip فشرده سازی میشه و نیازی به انجام این کار نیست
ولی تو page source کلا فاصله و خط جدید وجود داره که حجم صفحه رو بالا میبره. با حذف اینها حجم خیلی کمتر میشه
سورس این صفحه رو ببینید : http://asp-mvc.ir/
using DoctorCode.Text;using System.Web.Mvc;
namespace DoctorCode.Web.Mvc
{
public class CompressedViewPage<TModel> : WebViewPage<TModel>
{
public override void WriteLiteral(object value)
{
#if DEBUG==false
if (value != null)
{
var html = value.ToString();
//html = html.Replace("\u200c", "‌");
html = RegexDb.SpacesBetweenTags.Replace(html, "> <");
html = RegexDb.NewLinesBetweenTags.Replace(html, " ");
if (RegexDb.DocType.IsMatch(html))
{
var match = RegexDb.DocType.Match(html);
html = RegexDb.DocType.Replace(html, string.Format("{0}\r\n", match.Value));
}
if (typeof(MvcHtmlString) == value.GetType())
{
value = new MvcHtmlString(html);
}
else
value = html;
}
#endif
base.WriteLiteral(value);
}
public override void Execute()
{
}
}
}
این کلاس رو تو پروژه تعزیف کنید بعد همه Viewها از این کلاس ارث ببرن.
نکته: کامنتها حذف میشن پس اگه از Virtual Element (مثال در ناک اوت) استفاده میکنید اونوقت کدهاتون درست کار نمیکنه. با دستکاری regex میتونید کامنتها رو نگه دارین