اشتراک‌ها
پیاده سازی RSS Reader در ASP.NET MVC
 In this post I am going to explain you how we can create a basic RSS Reader with the help of Linq-To-Xml and ASP.NET MVC Razor. 
پیاده سازی RSS Reader در ASP.NET MVC
اشتراک‌ها
مشکلات SQLite

If your app makes use of two separate instances of the SQLite library, you can end up with a corrupted SQLite data file

مشکلات SQLite
نظرات مطالب
ارتقاء به ASP.NET Core 1.0 - قسمت 17 - بررسی فریم ورک Logging
سطح لاگ کردن را باید تنظیم کنید: (نکته‌ی کند شدن برنامه با تنظیم سطح لاگ به Information را هم مطالعه کنید)
logging.AddDbLogger(); // You can change its Log Level using the `appsettings.json` file -> Logging -> LogLevel -> Default
نظرات اشتراک‌ها
بررسی وضعیت فعلی پروژه Roslyn
کدهای IL درکی از پروسسور ندارند. به همین علت انتقال پذیر هستند. کار JIT هست که بسته به معماری سیستم، native machine instructions را تولید کند. به همین جهت است که کدهای IL شما (بسته بندی شده در فایل‌های DLL یا EXE دات نت) به راحتی بر روی سیستم‌های 64 و 32 بیتی اجرا می‌شوند و روی هر کدام از این سیستم‌ها نیز رفتاری 64 یا 32 بیتی خواهند داشت. JIT هست که کدهای ماشین مخصوص پروسسور جاری را تولید می‌کند. JIT کامپایلر فعلی دات نت برای تولید سریع کد و نمایش سریع برنامه‌های دات نت طراحی شده‌است. اما همین سرعت بالای تولید کدها، الزاما به تولید کدهای بهینه‌ای ختم نشده‌است. خصوصا در برنامه‌های سمت سرور اصلا اهمیتی ندارد که زمان start up یک برنامه وب چقدر است. کسی متوجه آن نخواهد شد چون در طول عمر برنامه وب تا ری‌استارت بعدی آن‌، فقط یکبار رخ می‌دهد. ضمنا اکثر سرورهای امروز X64 هستند (در ویندوزهای سرور جدید، تولید نسخه 32 بیتی کلا کنار گذاشته شده‌است) و به این ترتیب می‌شود JIT کامپایلری بهینه سازی شده برای صرفا پروسسورهای 64 بیتی تولید کرد و ... اینکار در حال انجام است. نتیجه نمونه آزمایشی آن تا الان حداقل 30 درصد بهبود سرعت برنامه‌ها بوده‌است.
مطالب
کاهش پهنای باند مصرفی یک سایت ASP.Net

مطلبی را دیروز در وبلاگ آقای صحرایی دیدم در مورد بهبود کارآیی برنامه‌ها و سایت‌های ASP.Net ، که یکی از موارد آن "فاصله بین تگ ها را تا حد ممکن از بین ببرید" بود.
برای پیاده سازی آن به صورت زیر می‌توان عمل کرد:
using System.Text.RegularExpressions;

//حذف فاصله‌های خالی
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());
}
}
این قطعه کد را در مسترپیج سایت خود قرار دهید تا به صورت یکسان به کل سایت اعمال شود.

یا روش دیگر اعمال آن سفارشی ساختن ASP.NET pipeline با کمک Response.Filter آن است. برای مشاهده پیاده سازی آن لطفا به مقاله زیر مراجعه بفرمائید:

برای بهینه سازی قسمت اعمال regular expressions آن می‌توان به مقاله "چگونه Regex سریعتری داشته باشیم؟" مراجعه کرد.