P a R y A
09-19-2010, 03:11 PM
کاهش حجم صفحات به وسیله حذف فضاهای خالی ( Remove White Space)
کاهش حجم صفحات به وسیله حذف فضاهای خالی
عمل حذف فضاهای خالی (Remove White Space ) به وسیله چند روش قابل پیاده سازی می باشد .
یکی از روش های معمول این کار استفاده از HttpModule می باشد البته این روش با HttpCompressionModule قابل استفاده نیست و به کسانی که از فشرده سازی صفحات استفاده می کنند پیشنهاد نمی شود .
برای اینکار کافیست کتابخانه زیر را به شاخه Bin پروژه خود اضافه کرده :
دریافت کتابخانه WhitespaceModule
و تگ زیر را داخل فایل Web.Config بنویسید :
كد:
<httpModules> <add type="WhitespaceModule" name="WhitespaceModule"/> </httpModules>
روش دوم که توسط RegularExpression انجام میشه به صورت زیر هست :
كد:
private static readonly Regex REGEX_BETWEEN_TAGS = new Regex(@">\s+<", RegexOptions.Compiled);
private static readonly Regex REGEX_LINE_BREAKS = new Regex(@"\n\s+", RegexOptions.Compiled);
protected override void Render(HtmlTextWriter writer)
**
using (HtmlTextWriter htmlwriter = new HtmlTextWriter(new System.IO.StringWriter()))
**
base.Render(htmlwriter);
string html = htmlwriter.InnerWriter.ToString();
html = REGEX_BETWEEN_TAGS.Replace(html, "> <");
html = REGEX_LINE_BREAKS.Replace(html, string.Empty);
writer.Write(html.Trim());
}
}
این کد هارا می توانید در MasterPage بنویسید تا تمامی صفحاتی که از آن ارث میگیرند شامل شود .
این روش برای کسانی که از روش فشرده سازی هم استفاده می کنند بسیار مفید و کارامد هست .
دقت نمایید که برای استفاده از این روش باید فضا نام System.Text.RegularExpressions را ابتدا ایمپورت نمایید
کاهش حجم صفحات به وسیله حذف فضاهای خالی
عمل حذف فضاهای خالی (Remove White Space ) به وسیله چند روش قابل پیاده سازی می باشد .
یکی از روش های معمول این کار استفاده از HttpModule می باشد البته این روش با HttpCompressionModule قابل استفاده نیست و به کسانی که از فشرده سازی صفحات استفاده می کنند پیشنهاد نمی شود .
برای اینکار کافیست کتابخانه زیر را به شاخه Bin پروژه خود اضافه کرده :
دریافت کتابخانه WhitespaceModule
و تگ زیر را داخل فایل Web.Config بنویسید :
كد:
<httpModules> <add type="WhitespaceModule" name="WhitespaceModule"/> </httpModules>
روش دوم که توسط RegularExpression انجام میشه به صورت زیر هست :
كد:
private static readonly Regex REGEX_BETWEEN_TAGS = new Regex(@">\s+<", RegexOptions.Compiled);
private static readonly Regex REGEX_LINE_BREAKS = new Regex(@"\n\s+", RegexOptions.Compiled);
protected override void Render(HtmlTextWriter writer)
**
using (HtmlTextWriter htmlwriter = new HtmlTextWriter(new System.IO.StringWriter()))
**
base.Render(htmlwriter);
string html = htmlwriter.InnerWriter.ToString();
html = REGEX_BETWEEN_TAGS.Replace(html, "> <");
html = REGEX_LINE_BREAKS.Replace(html, string.Empty);
writer.Write(html.Trim());
}
}
این کد هارا می توانید در MasterPage بنویسید تا تمامی صفحاتی که از آن ارث میگیرند شامل شود .
این روش برای کسانی که از روش فشرده سازی هم استفاده می کنند بسیار مفید و کارامد هست .
دقت نمایید که برای استفاده از این روش باید فضا نام System.Text.RegularExpressions را ابتدا ایمپورت نمایید