کتابخانه EasyCaching : اCaching با امکانات زیاد اما یکپارچه و آسان
200, OK
https://github.com/dotnetcore/EasyCaching icon

این کتابخانه، تکنولوژی‌ها و کتابخانه‌های زیر را در راستای ایجاد Caching کامل و با امکانات زیاد، یکپارچه کرده و استفاده از آنها را آسان می‌کند.

Caching Providers

  • Memory
  • Redis
  • SQLite
  • Memcached
  • Hybrid(Combine local caching and distributed caching)
  • Disk

Serializer Extensions

  • BinaryFormatter
  • MessagePack
  • Json
  • ProtoBuf

Caching Interceptor

  • AspectCore
  • Castle

Caching Bus

  • Redis
  • RabbitMQ 
کتابخانه EasyCaching : اCaching با امکانات زیاد اما یکپارچه و آسان
پیاده سازی معادل Membership.GeneratePassword در ASP.NET Core
200, OK
https://www.ryadel.com/en/c-sharp-random-password-generator-asp-net-core-mvc/ icon

با استفاده از متد Membership.GeneratePassword که در فضای نام System.Web.Security موجود بود امکان تولید کلمه عبور رندوم وجود داشت که متاسفانه در ASP.NET Core  در دسترس نیست .

پیاده سازی معادل آن با الهام از منبع رسمی  

public static string GenerateRandomPassword(PasswordOptions opts = null)
{
    if (opts == null) opts = new PasswordOptions()
    {
        RequiredLength = 8,
        RequiredUniqueChars = 4,
        RequireDigit = true,
        RequireLowercase = true,
        RequireNonAlphanumeric = true,
        RequireUppercase = true
    };
 
    string[] randomChars = new [] {
        "ABCDEFGHJKLMNOPQRSTUVWXYZ",    // uppercase 
        "abcdefghijkmnopqrstuvwxyz",    // lowercase
        "0123456789",                   // digits
        "!@$?_-"                        // non-alphanumeric
    };
    Random rand = new Random(Environment.TickCount);
    List<char> chars = new List<char>();
 
    if (opts.RequireUppercase)
        chars.Insert(rand.Next(0, chars.Count), 
            randomChars[0][rand.Next(0, randomChars[0].Length)]);
 
    if (opts.RequireLowercase)
        chars.Insert(rand.Next(0, chars.Count),
            randomChars[1][rand.Next(0, randomChars[1].Length)]);
 
    if (opts.RequireDigit)
        chars.Insert(rand.Next(0, chars.Count),
            randomChars[2][rand.Next(0, randomChars[2].Length)]);
 
    if (opts.RequireNonAlphanumeric)
        chars.Insert(rand.Next(0, chars.Count),
            randomChars[3][rand.Next(0, randomChars[3].Length)]);
 
    for (int i = chars.Count; i < opts.RequiredLength 
        || chars.Distinct().Count() < opts.RequiredUniqueChars; i++)
    {
        string rcs = randomChars[rand.Next(0, randomChars.Length)];
        chars.Insert(rand.Next(0, chars.Count), 
            rcs[rand.Next(0, rcs.Length)]);
    }
 
    return new string(chars.ToArray());
}
پیاده سازی معادل Membership.GeneratePassword در ASP.NET Core
معرفی abp.io زیرساختی آماده جهت راه اندازی پروژه های asp.net core
200, OK
https://abp.io/ icon

This project is the next generation of the ASP.NET Boilerplate web application framework.

Modular Architecture
Designed as modular and extensible from the bottom to the top.

Microservice Focused
Designed to support microservice architecture and helps to build autonomous microservices.

Domain Driven Design
Designed and developed based on DDD patterns and principles. Provides a layered model for your application.

Authorization
Advanced authorization with user, role and fine-grained permission system. Built on the Microsoft Identity library.

Multi-Tenancy
SaaS applications made easy! Integrated multi-tenancy from database to UI.

Cross Cutting Concerns
Complete infrastructure for authorization, validation, exception handling, caching, audit logging, transaction management and so on. 

معرفی abp.io زیرساختی آماده جهت راه اندازی پروژه های asp.net core
پروژه ای جهت پیاده سازی ایده های خلاقانه در ASP.NET Core
200, OK
https://github.com/aspnet/Entropy/ icon

بررسی سورس کد این پرژه، ایده‌های بسیار جالبی به شما میدهد. پیشنهاد میکنم حتما کد هاشو بررسی کنید. نکات آموزشی زیادی داخل هست.

چند پروژه منتخب :

  1. Mvc.GenericControllers : ساخت کنترولر برای Entity‌ها بدون کدنویسی!
  2. Mvc.CustomRoutingConvention : مسیریابی بر اساس namespace کنترولر‌ها
  3. Localization.EntityFramework  : مدیریت منابع چند زبانگی توسط EntityFramework
پروژه ای جهت پیاده سازی ایده های خلاقانه در ASP.NET Core
آموزش Unit Testing در Asp.net Core
200, OK
https://www.youtube.com/watch?v=oywjqZX0eWE icon

One of my favorite aspects of ASP.NET Core is that it is truly cross platform. And this extends to the developer experience as well. This videos discusses and demonstrates getting started with testing ASP.NET Core MVC applications using the cross-platform tools with the .NET Core SDK,  

آموزش Unit Testing در Asp.net Core