ASP.NET5控制器构造函数中注入太多的依赖项会影响性能和内存吗?
创始人
2024-09-17 03:30:33
0

在ASP.NET 5控制器构造函数中注入太多的依赖项可能会影响性能和内存。为了避免这种情况,可以通过将相同类型的依赖项分组来减少注入的数量。例如,可以将所有数据访问类的依赖项分组并将它们注入到单个仓储类中。然后,可以注入这个仓储类到控制器中,而不是注入所有的数据访问依赖项。

以下是一个示例,展示了如何在ASP.NET 5控制器中分组依赖项:

public interface ICustomerRepository
{
    List GetAllCustomers();
}

public class CustomerRepository : ICustomerRepository
{
    private readonly MyAppDbContext _dbContext;

    public CustomerRepository(MyAppDbContext dbContext)
    {
        _dbContext = dbContext;
    }

    public List GetAllCustomers()
    {
        return _dbContext.Customers.ToList();
    }
}

public class OrderService : IOrderService
{
    private readonly ICustomerRepository _customerRepository;
    private readonly IOrderRepository _orderRepository;

    public OrderService(ICustomerRepository customerRepository, IOrderRepository orderRepository)
    {
        _customerRepository = customerRepository;
        _orderRepository = orderRepository;
    }

    public List GetOrdersByCustomerId(int customerId)
    {
        var customer = _customerRepository.GetCustomerById(customerId);

        if (customer == null)
        {
            throw new ArgumentException("Invalid customer Id.");
        }

        return _orderRepository.GetOrdersByCustomerId(customerId);
    }
}

public class HomeController : Controller
{
    private readonly IOrderService _orderService;

    public HomeController(IOrderService orderService)
    {
        _orderService = orderService;
    }

    public IActionResult Index()
    {
        var orders = _orderService.GetOrdersByCustomerId(1);

        return View(orders);
    }
}

在上面的示例中,数据

相关内容

热门资讯

aapoker透视辅助(AAP... aapoker透视辅助(AAPOkER)aapoker软件app(辅助挂)黑科技教程(总是有挂)暗藏...
黑科技辅助(wepOke)黑科... 黑科技辅助(wepOke)黑科技透明挂辅助下载(透视)规律教程(确实存在有挂)1、让任何用户在无需w...
wpk俱乐部(WpK)wpk微... wpk俱乐部(WpK)wpk微扑克俱乐部(透视)透明挂教程(一直真的是有挂)1、玩家可以在wpk俱乐...
德州之星有机器人吗(德州之星)... 德州之星有机器人吗(德州之星)德州ai辅助工具购买(辅助挂)介绍教程(竟然有挂)1)德州之星有机器人...
黑科技私人局(wepokE)黑... 黑科技私人局(wepokE)黑科技透明挂辅助安装(透视)详细教程(本来真的是有挂)1、wepokE透...
wpk有伙牌吗(WPk)wpk... wpk有伙牌吗(WPk)wpk怎么提高胜率(透视)曝光教程(好像真的有挂)运wpk有伙牌吗辅助工具,...
黑科技中牌率(wopoker)... 黑科技中牌率(wopoker)黑科技透明挂辅助方法(透视)普及教程(本来真的是有挂);1、完成wop...
wpk透视外挂会怎么样(wPk... wpk透视外挂会怎么样(wPk)wpk被系统针对(透视)线上教程(一贯真的是有挂)1、实时wpk透视...
黑科技辅助挂(微扑克游戏)外挂... 黑科技辅助挂(微扑克游戏)外挂透视辅助下载(透视)系统教程(确实有挂)1、任何微扑克游戏ai辅助神器...
aapoker有胜率保护吗(A... aapoker有胜率保护吗(AAPOKeR)aapoker有猫腻吗(辅助挂)系统教程(一直是真的有挂...