اشتراک‌ها
مقایسه‌ای بین Mapperly و AutoMapper
There is a better alternative — a mapping library based on source generators And the name of this library is Mapperly ( https://github.com/riok/mapperly)
This library solves the problems of AutoMapper and doesn’t exclude the use of manual mapping if you really want to :)
مقایسه‌ای بین Mapperly و AutoMapper
اشتراک‌ها
اعتبارسنجی IOptions توسط کتابخانه MiniValidation

In this post I described the problem that by default, DataAnnotation validation doesn't recursively inspect all properties in an object for DataAnnotation attributes. There are several solutions to this problem, but in this post I used the MiniValidation library from Damian Edwards. This simple library provides a convenience wrapper around DataAnnotation validation, as well as providing features like recursive validation. Finally I showed how you can replace the built-in DataAnnotation validation with a MiniValidation-based validator

var builder = WebApplication.CreateBuilder(args);

builder.Services.AddOptions<MySettings>()
    .BindConfiguration("MySettings")
    .ValidateMiniValidation() // 👈 Replace with mini validation
    .ValidateOnStart();

var app = builder.Build();
OptionsValidationException: 
  DataAnnotation validation failed for 'MySettings' member: 'Nested.Value' with errors: 'The Value field is required.'.; 
  DataAnnotation validation failed for 'MySettings' member: 'Nested.Count' with errors: 'The field Count must be between 1 and 100.'.
Microsoft.Extensions.Options.OptionsFactory<TOptions>.Create(string name)
Microsoft.Extensions.Options.OptionsMonitor<TOptions>+<>c__DisplayClass10_0.<Get>b__0()


اعتبارسنجی IOptions  توسط کتابخانه MiniValidation
اشتراک‌ها
کتابخانه instafetch
instafetch fetches media from Instagram based on (and only on) the user and/or tag, relying on the Instagram API.

If you use the Instagram API to make a call, you will only get 33 results back, no matter what you specify in the count paramter. Instafetch will help you fetch more media than the limit imposes, in exchange for more API calls, which can count against your hourly limit.  Demo
کتابخانه instafetch
اشتراک‌ها
خودکارسازی فرآیند اعمال GlobalQueryFilter در EF Core

Entity Framework Core 2.0 introduces global query filters that can be applied to entities when a model is created. It makes it easier to build multi-tenant applications and support soft deleting of entities. This blog post gives a deeper overview of how to use global query filters in real-life applications and how to apply global query filters to domain entities automatically. 

خودکارسازی فرآیند اعمال GlobalQueryFilter در EF Core
اشتراک‌ها
NewSQL چیست؟

Some NewSQL solutions

NewSQL-db-logosVoltDB  (in-memory database) : http://voltdb.com

ClustrixDB (distributed peer-to-peer SQL database) : http://www.clustrix.com

NuoDB (distributed database management) : http://www.nuodb.com

GenieDB (based on MySQL) : http://www.geniedb.com

ScaleArc (SQL traffic manager ) :  http://www.scalearc.com

ScaleDB (MySQL scalability) : http://scaledb.com

Tokutek/TokuDB (MySQL/MariaDB scallability): http://www.tokutek.com

JustoneDB (built upon PostgreSQL) : http://www.justonedb.com

MemSQL (in-memory database) : http://www.memsql.com   

NewSQL چیست؟
اشتراک‌ها
پیش نمایش MAUI و اجرای یک مثال

At Microsoft Build 2021 .NET MAUI Preview 4 was launched. This version is already pretty complete and starts to reflect what the end result is going to look like. In this video I will show you the new .NET MAUI template in Visual Studio 2019 and walk you through the Weather 21 demo app.  

پیش نمایش MAUI و اجرای یک مثال
نظرات مطالب
ایجاد جداول بهینه سازی شده برای حافظه در SQL Server 2014
 موقع اجرای دستور  ALTER DATABASE SQL2014_Demo 
    ADD FILEGROUP MemFG CONTAINS MEMORY_OPTIMIZED_DATA 
GO 
این خطا رو میده لطفا راهنمایم کنید
Msg 534, Level 15, State 72, Line 37
'FILEGROUP ... CONTAINS MEMORY_OPTIMIZED_DATA' failed because it is not supported in the edition of this SQL Server instance 'TFS-SERVER'. See books online for more details on feature support in different SQL Server editions.
اشتراک‌ها
معرفی TypeScript 2 توسط Anders Hejlsberg

In this video Anders Hejlsberg spends some time discussing TypeScript. He starts with the reasons behind creating TypeScript (the so called elevator speech) and then moves on to some of the features coming in the next release. He mentions a number of features but spends the time discussing the null (and corresponding undefined) types and how TypeScript 2 makes handling them much easier. 

معرفی TypeScript 2 توسط Anders Hejlsberg
اشتراک‌ها
سری بررسی پشت صحنه‌ی دات نت

In this series I answer various .NET questions. Some of them are asked during interviews, some of them I see on the internet, some of them are completely made up. The goal is to provide short answer with links to references if needed. This is by no means a .NET tutorial or experts reference, this is just a bunch of useful answers to refresh your knowledge. 

سری بررسی پشت صحنه‌ی دات نت