DomainContextResolver.cs 636 B

123456789101112131415161718192021
  1. using System;
  2. using Quadarax.Foundation.Core.Data.Interface.Domain;
  3. namespace Quadarax.Foundation.Core.Data.Domain
  4. {
  5. public class DomainContextResolver<TDomainContext> : IDomainContextResolver<TDomainContext> where TDomainContext: DataDomain
  6. {
  7. private TDomainContext _context;
  8. public DomainContextResolver(TDomainContext context)
  9. {
  10. _context = context ?? throw new ArgumentNullException(nameof(context));
  11. }
  12. public TReturnContext GetCurrent<TReturnContext>() where TReturnContext : TDomainContext
  13. {
  14. return (TReturnContext) _context;
  15. }
  16. }
  17. }