نظرات مطالب
دو خبر در مورد برنامه Reflector
ولی واقعا این نسخه ارزش پرداخت 35 دلار رو داره.
پاسخ به بازخورد‌های پروژه‌ها
راهنمایی در مورد سفارش و جزییات سفارش و اتصال به درگاه بانک
شما اگر قبل از هدایت کاربر به سمت درگاه پرداخت ، سفارش کاربر رو ثبت کنید و وضعیت سفارش رو "در انتظار پرداخت " قرار دهید ، می‌توانید کد اصلی جدول پرداخت رو (OrderMaster)  رو به عنوان شماره منحصر بفرد به درگاه پرداخت بفرستید .
اشتراک‌ها
Sharp ماژولی برای تغییر ابعاد تصاویر در Node.js

این ماژول یکی از معروف‌ترین و پرسرعت‌ترین کتابخانه‌ها به منظور تغییر ابعاد تصاویر برای Node.js است.

این ماژول چیزی در حدود 4 الی 5 برابر، در سرعت تغییر ابعاد تصاویر تاثیر دارد و افزایش چشم‌گیر آن قابل لمس می‌باشد.

Sharp ماژولی برای تغییر ابعاد تصاویر در Node.js
نظرات مطالب
کار با کلیدهای اصلی و خارجی در EF Code first
از این دست کتابخانه‌ها  زیاد است. استفاده از این‌ها بیشتر سلیقه‌ای است. یک نفر بر اساس سرعت این‌ها رو بررسی می‌کنه یک نفر بر اساس تعداد قابلیت‌ها. در کل نهایتا تمام این‌ها یک هدف رو برآورده می‌کنند و عموما در Syntax بیشتر با هم تفاوت دارند.

مطالب
نحوه تولید پویای صفحات از طریق دیتابیس در ASP.NET MVC
گاهی نیاز داریم صفحات را در دیتابیس ذخیره کنیم تا علاوه بر قابلیت جستجوی پیشرفته‌ی صفحات از طریق Full Text Search، بتوانیم از پویایی صفحات کامپایل شونده نیز استفاده کنیم.
جهت پیاده سازی این مثال ما از Entity Framework استفاده می‌کنیم.
بنابراین ابتدا کلاس Page را جهت ذخیره آدرس و محتوی صفحات مجازی در دیتابیس، پیاده سازی می‌کنیم: 
public class Page
{
    public int Id { get; set; }

    public string Path { get; set; }

    public string Content { get; set; }
}  
سپس کلاس VirtualPathProvider را سفارشی سازی می‌کنیم:
public class CustomVirtualPathProvider : VirtualPathProvider
{
    public override bool FileExists(string virtualPath)
    {
        return base.FileExists(virtualPath) || FileExistsInDatabase(virtualPath);
    }

    public override VirtualFile GetFile(string virtualPath)
    {
        return base.FileExists(virtualPath)
            ? base.GetFile(virtualPath)
            : new CustomVirtualFile(virtualPath, GetFileFromDatabase(virtualPath));
    }

    private bool FileExistsInDatabase(string virtualPath)
    {
        virtualPath = virtualPath.Replace("~", "");

        return new DatabaseContext().Pages.Any(v => v.Path == virtualPath);
    }

    private byte[] GetFileFromDatabase(string virtualPath)
    {
         virtualPath = virtualPath.Replace("~", "");

         return Encoding.UTF8.GetBytes(new DatabaseContext().Pages.First(v => v.Path == virtualPath).Content);
    }
}  
تابع FileExists ابتدا وجود فایل مورد نظر را در مسیر داده شده، بررسی می‌کند و در صورت عدم وجود آن، دیتابیس را به دنبال آن جستجو می‌کند.
تابع GetFile در صورتیکه صفحه به صورت فایل موجود باشد، روال همیشگی را جهت نمایش طی می‌کند. اما اگر نباشد یک نمونه از کلاس سفارشی سازی شده‌ی CustomVirtualFile را ایجاد کرده و بر می‌گرداند.
کلاس CustomVirtualFile به صورت زیر سفارشی سازی شده:
public class CustomVirtualFile : VirtualFile
{
    private readonly byte[] _content;

    public CustomVirtualFile(string virtualPath, byte[] content)
        : base(virtualPath)
    {
        _content = content;
    }

    public override Stream Open()
    {
        return new MemoryStream(_content);
    }
}  
تابع Open، محتوای ارائه شده را به صورت یک استریم بر می‌گرداند.

حال نوبت ثبت کلاس CustomVirtualPathProvider جهت استفاده‌ی خودکار از آن می‌باشد. برای این کار در تابع Application_Start موجود در فایل Global.asax.cs دستور زیر را اضافه می‌نماییم:
protected void Application_Start()
{
    HostingEnvironment.RegisterVirtualPathProvider(new CustomVirtualPathProvider());
    //...
}
و تمام!
همه چیز به صورت خودکار اجرا شده و در صورت عدم وجود فایل در آدرس‌های ارسال شده، صفحات ما از طریق جدول Pages موجود در دیتابیس بارگزاری می‌شوند.
نظرات اشتراک‌ها
RIA Services و پشتیبانی از EntityFramework 5.0.0
روی لینک ابتدای بحث کلیک کنید؛ وبلاگ مدیر پروژه RIA Services است. تاریخچه و تغییرات جدید آن‌را که الان سورس باز شده همانجا در مطالب اخیر آن بلاگ پیگیری کنید. در مورد VS 2013 و تغییرات آن هم مستندات کافی ارائه شده در آن بلاگ.
اشتراک‌ها
CI / CD ساده با GitHub در دات نت

گیتهاب برای راه اندازی CI/CD از GitHub Actions استفاده می‌کند که می‌توانید مستندات آن را در اینجا مشاهده کنید و به صورت کامل با آن آشنا شوید. در اینجا با یک مثال با مراحل راه‌اندازی CI/CD به وسیله GitHub آشنا می‌شویم. 

نمونه کد این مطلب با روند انجامش رو می‌تونید از اینجا بگیرید . 

CI / CD ساده با GitHub در دات نت
اشتراک‌ها
بررسی فنی بدافزار Regin

نسخه‌های مختلف Regin براساس برخی روایت‌ها بیش از یک دهه است به جاسوسی از کشورهای مختلف می‌پردازد. در حالی که در بیشتر موارد، مهاجمان تمرکز شان بر روی استخراج اطلاعات حساس مانند ایمیل‌ها و مستندات است، مواردی نیز مشاهده شده است که مهاجمان اپراتورهای مخابراتی را نیز مورد هدف قرار داده تا راه را برای حملات اضافی باز کنند.  

بررسی فنی بدافزار Regin