بازخوردهای دوره
متدهای الحاقی و ترکیب کننده‌های اعمال غیرهمزمان
چندی پیش نیاز به اعمال ConfigureAwait false در تمام متدهای Async کتابخانه Common ای را داشتم. برای اعمال سریع این تغییر، Regex زیر را نوشتم تا با Search & Replace ویژال استودیو بتوانم این مورد را با یک Replace All ساده به همه متدها اعمال کنم.  
برای استفاده کافیست تنها از منوی Edit > Find and Replace > Replace in Files را انتخاب کرده ، در پنجره باز شده در بخش Find Options تیک Use Regular Expressions را زده
در بخش Find What عبارت زیر را نوشته 
await(.+);
در بخش Replace With عبارت زیر را نوشته و در نهایت دکمه Replace All را بفشارید . با این کار ConfigureAwait false به تمامی فراخوانی‌های همزمان اعمال خواهد شد
await $1.ConfigureAwait(false);

اشتراک‌ها
تعدادی متد الحاقی برای AutoMapper و EF 6.0
This contains some useful extensions I've used with AutoMapper and EF6. Instead of this:

Mapper.CreateMap<Employee, EmployeeDto>()
  .ForMember(d => d.FullName, opt => opt.MapFrom(src => src.FirstName + " " + src.LastName));

var employees = await db.Employees.ProjectTo<EmployeeDto>().ToListAsync();
You can do this instead:

public class Employee {
  [Computed]
  public string FullName { get { return FirstName + " " + LastName; } }
}
Mapper.CreateMap<Employee, EmployeeDto>();

var employees = await db.Employees.ProjectToListAsync<EmployeeDto>();
تعدادی متد الحاقی برای AutoMapper و EF 6.0
اشتراک‌ها
استفاده از تکنیک Fanout برای پیاده سازی asynchronous messaging بوسیله RabbitMQ در معماری Microservices

There are various techniques that could be implemented to achieve asynchronous interactions among microservices. In this article, I shall talk about a use case where we would be using a message broker – RabbitMQ – and “Fanout” technique to implement the asynchronous messaging pattern in action. 

استفاده از تکنیک Fanout برای پیاده سازی asynchronous messaging بوسیله RabbitMQ در معماری Microservices