如何实现异步功能?

时间:2019-04-13 09:28:26

标签: asp.net asp.net-mvc

我希望我的功能异步完成。我仍然学习编写异步代码,并想寻求您的帮助。这种功能必须如何编写?

class CustomerController : Controller
{

    private ICustomerRepository _customerRepository;

    public CustomerController(ICustomerRepository customerRepository)
    {
        _customerRepository = customerRepository;
    }

    [HttpGet]
    public IActionResult Index()
    {
        IEnumerable<CustomerViewModel> customers =
            _customerRepository.GetAllCustomers().Select(s => new CustomerViewModel
            {
                CustomerId = s.CustomerId,
                Name = s.Name,
                Adress = s.Adress
            });

        return View("Index", customers);

    }

}

接口:

 public interface ICustomerRepository
{
    IEnumerable<Customer> GetAllCustomers();
}

    public class CustomerRepository : ICustomerRepository
    {
    private StoreDBContext _db;

    public CustomerRepository(StoreDBContext db)
    {
        _db = db;
    }
    public IEnumerable<Customer> GetAllCustomers()
    {
        return _db.Customers;
    }
    }

1 个答案:

答案 0 :(得分:0)

[HttpGet]
public async Task<IActionResult> Index()
{
    IEnumerable<CustomerViewModel> customers =
        _customerRepository.GetAllCustomers().Select(s => new CustomerViewModel
        {
            CustomerId = s.CustomerId,
            Name = s.Name,
            Adress = s.Adress
        });

    return View("Index", customers);

}