OrderRepository.cs 1.1 KB

123456789101112131415161718192021222324252627
  1. using System.Collections.Generic;
  2. using AutoMapper;
  3. using Datory;
  4. using GxPress.Common.AppOptions;
  5. using GxPress.Common.Tools;
  6. using GxPress.Repository.Interface.Order;
  7. using Microsoft.Extensions.Options;
  8. namespace GxPress.Repository.Implement.Order
  9. {
  10. public class OrderRepository : IOrderRepository
  11. {
  12. private readonly Repository<Entity.Order.Order> _repository;
  13. private readonly IMapper _mapper;
  14. public OrderRepository(IOptionsMonitor<DatabaseOptions> dbOptionsAccessor, IMapper mapper)
  15. {
  16. var databaseType = StringUtils.ToEnum<DatabaseType>(dbOptionsAccessor.CurrentValue.DatabaseType, DatabaseType.MySql);
  17. var database = new Database(databaseType, dbOptionsAccessor.CurrentValue.ConnectionString);
  18. _repository = new Repository<Entity.Order.Order>(database);
  19. _mapper = mapper;
  20. }
  21. public IDatabase Database => _repository.Database;
  22. public string TableName => _repository.TableName;
  23. public List<TableColumn> TableColumns => _repository.TableColumns;
  24. }
  25. }