title: DDD with EF Core(DTO, Business, Etc)
body: <p>I'm trying to get into Design Patterns and REST API's, and for a project, I use Entity Framework Core with:</p>
  
  <ul>
  <li>Repository pattern</li>
  <li>Unit of work</li>
  </ul>
  
  <p>Some things that are really foggy for me:</p>
  
  <ul>
  <li>Data validation, where should this be done?</li>
  <li>Events? Where should this be triggered? Example: When a user is registered I want to send them an email.</li>
  <li>Should the business layer take DTO or Domain models?</li>
  <li>Where should convertion from DTO to Domain models go?</li>
  <li>What should go into the controller?</li>
  </ul>
  
  <p>I know these things also depends on the developer, but what's the best/"original" way to go about this.</p>