Skip to content


Repository files navigation

Hands-On Domain-Driven Design with .NET Core

Hands-On Domain-Driven Design with .NET Core

This is the code repository for Hands-On Domain-Driven Design with .NET Core, published by Packt.

Tackling complexity in the heart of software by putting DDD principles into practice

What is this book about?

Developers across the world are rapidly adopting DDD principles to deliver powerful results when writing software that deals with complex business requirements. This book will guide you in involving business stakeholders when choosing the software you are planning to build for them. By figuring out the temporal nature of behavior-driven domain models, you will be able to build leaner, more agile, and modular systems.

This book covers the following exciting features:

  • Discover and resolve domain complexity together with business stakeholders
  • Avoid common pitfalls when creating the domain model
  • Study the concept of Bounded Context and aggregate
  • Design and build temporal models based on behavior and not only data
  • Explore benefits and drawbacks of Event Sourcing Get acquainted with CQRS and to-the-point read models with projections Practice building one-way flow UI with Vue.js Understand how a task-based UI conforms to DDD principles

If you feel this book is for you, get your copy today!

Instructions and Navigations

All of the code is organized into folders. For example, Chapter02.

The code will look like the following:

protected async Task UsingSession(
    Func<IAsyncDocumentSession, Task> operation

Following is what you need for this book: This book is for .NET developers who have an intermediate level understanding of C#, and for those who seek to deliver value, not just write code. Intermediate level of competence in JavaScript will be helpful to follow the UI chapters.

With the following software and hardware list you can run all code files present in the book (Chapter 5-11, 13).

Software and Hardware List

No. Software required OS required
1 JetBrains Rider 2019.1 or higher Windows, Linux, macOS
2 Microsoft Visual Studio Windows, Linux, macOS
3 Docker 18.09.2 or higher Windows, Linux, macOS
4 .NET Core SDK 2.2.203 or higher Windows, Linux, macOS
5 EventStore Windows, Linux, macOS
6 PostgreSQL Windows, Linux, macOS
7 RavenDB Windows, Linux, macOS

We also provide a PDF file that has color images of the screenshots/diagrams used in this book. Click here to download it.


Page 19 (Paragraph 1, line 5): At the other hand should be On the other hand
Page 152 (Paragraph 1, line 4): That's we call this layer should be That's why we call this layer
Page 32 (Paragraph 5, line 32): silly in front of the bund of nerds should be silly in front of the bunch of nerds

Related products

Get to Know the Author

Alexey Zimarev is a software architect with a present focus on domain models, Domain-Driven Design (DDD), event sourcing, message-driven systems and microservices, coaching, and mentoring. Alexey is also a contributor to several open source projects, such as RestSharp, Proto.Actor and MassTransit, and is the organizer of the DDD Norway meetup. Check Alexey's blog and reach out in Twitter @Zimareff.

Suggestions and Feedback

Open an issue in this repository for bug reports, feedback, suggestions and ideas.

Download a free PDF

If you have already purchased a print or Kindle version of this book, you can get a DRM-free PDF version at no cost.
Simply click on the link to claim your free PDF.


Hands-On Domain-Driven Design with .NET Core, published by Packt







No releases published


No packages published