/// <summary> /// This method creates a new instance of ExpensiveToCreateService and disposes it for every call to GetProductAsync. /// </summary> public async Task <Product> GetProductAsync(string id) { var expensiveToCreateService = new ExpensiveToCreateService(); return(await expensiveToCreateService.GetProductByIdAsync(id)); }
/// <summary> /// This method uses the shared instance of ExpensiveToCreateService for every call to GetProductAsync. /// </summary> /// <param name="id"></param> /// <returns></returns> public async Task <Product> GetProductAsync(string id) { return(await ExpensiveToCreateService.GetProductByIdAsync(id)); }
/// <summary> /// This method creates a new instance of ExpensiveToCreateService and disposes it for every call to GetProductAsync. /// </summary> public async Task<Product> GetProductAsync(string id) { var expensiveToCreateService = new ExpensiveToCreateService(); return await expensiveToCreateService.GetProductByIdAsync(id); }