در این سری از ویدیو سعی شده از الگویهای طراحی decorator ، Composite، strategy ، Null object با استفاده از قوانین مونوئیدها توضیح بدیم.
services.AddScheduler(scheduler => { scheduler.Schedule( () => Console.WriteLine("Run at 1pm utc during week days.") ) .DailyAt(13, 00); .Weekday(); } );
IQueue _queue; public HomeController(IQueue queue) { this._queue = queue; } //... Further down ... public IActionResult QueueTask() { // Call .QueueTask() to add item to the queue! this._queue.QueueTask(() => Console.WriteLine("This was queued!")); return Ok(); }
In .NET Core 2.1 a new struct
was added. It’s called System.HashCode
and it makes generating hash codes super convenient. Have a look at this class.
class Person { public string FirstName { get; set; } public string LastName { get; set; } public override int GetHashCode() => HashCode.Combine(FirstName, LastName); }
The Brighter project is up on GitHub incudes a bunch of libraries and examples that you can pull in to support CQRS architectural styles in .NET.
نمونه از پیاده سازی این کتابخانه در Mvc Core
Never use automappers to map DTOs to domain classes.
Use them only to map from domain classes to DTOs.
Automappers might not add much value in complex domain models. In such scenarios, you can as well just implement the mapping manually.
Automappers are still useful as scaffolding mechanism when you start your project out, or if your domain isn’t too complex.