public async Task <IViewComponentResult> InvokeAsync() { var curentUser = await _workContext.GetCurrentUser(); var model = new DefaultAddressViewComponentVm(); if (curentUser.DefaultShippingAddressId.HasValue) { var userAddress = _userAddressRepository.Query().Include(a => a.Address) .ThenInclude(x => x.District) .ThenInclude(x => x.StateOrProvince) .ThenInclude(x => x.Country) .First(x => x.Id == curentUser.DefaultShippingAddressId.Value); if (userAddress != null) { model.Address = new UserAddressListItem { UserAddressId = userAddress.Id, ContactName = userAddress.Address.ContactName, Phone = userAddress.Address.Phone, AddressLine1 = userAddress.Address.AddressLine1, AddressLine2 = userAddress.Address.AddressLine1, DistrictName = userAddress.Address.District.Name, StateOrProvinceName = userAddress.Address.StateOrProvince.Name, CountryName = userAddress.Address.Country.Name }; } } return(View("/Modules/SimplCommerce.Module.Core/Views/Components/DefaultShippingAddress.cshtml", model)); }
public async Task <IViewComponentResult> InvokeAsync() { var curentUser = await _workContext.GetCurrentUser(); var model = new DefaultAddressViewComponentVm(); if (curentUser.DefaultShippingAddressId.HasValue) { model.Address = await _userAddressRepository.Query() .Where(x => x.Id == curentUser.DefaultShippingAddressId.Value) .Select(x => new UserAddressListItem { UserAddressId = x.Id, ContactName = x.Address.ContactName, Phone = x.Address.Phone, AddressLine1 = x.Address.AddressLine1, AddressLine2 = x.Address.AddressLine2, DistrictName = x.Address.District.Name, StateOrProvinceName = x.Address.StateOrProvince.Name, CountryName = x.Address.Country.Name }) .FirstOrDefaultAsync(); } return(View(this.GetViewPath(), model)); }