public CommonResponseViewModel AddVendor(VendorViewModel vendorVM) { CommonResponseViewModel response = new CommonResponseViewModel(); var vendor = new EfDbContext.Vendor(); vendor.FirstName = vendorVM.firstName; vendor.MiddleName = vendorVM.middleName; vendor.NickName = vendorVM.nickName; vendor.LastName = vendorVM.lastName; vendor.MobileNo = vendorVM.mobile; vendor.ReferredBy = vendorVM.referredBy; vendor.CreatedBy = vendorVM.createdBy; vendor.ModifiedBy = vendorVM.modifiedBy; using (_dbContext = new AccountdbContext()) { //Save the vendor entity first........ _dbContext.Vendor.Add(vendor); _dbContext.SaveChanges(); response.isSuccess = true; //update the vendorid from db to viewModel............................ response.recordId = vendor.VendorId; vendorVM.id = response.recordId; EfDbContext.VendorDetails vendorDetails = new EfDbContext.VendorDetails() { VendorId = vendorVM.id, AlternateMobile = vendorVM.alternateMobile, HomePhone = vendorVM.homePhone, Email = vendorVM.email, Address = vendorVM.address, City = vendorVM.city, State = vendorVM.state }; _dbContext.VendorDetails.Add(vendorDetails); _dbContext.SaveChanges(); ////Loop all the address list and update the address in the db.................... //if (vendorVM.VendorAddressList.Any()) //{ // foreach (var item in vendorVM.VendorAddressList) // { // _dbContext.VendorDetails.Add(ConstructVendorAddressAsPerContext(item, vendorVM.id)); // } //} } return(response); }
private static VendorViewModel ConstructVendorViewModelFromContext(EfDbContext.Vendor v, EfDbContext.VendorDetails vd) { return(new VendorViewModel() { id = v.VendorId, nickName = v.NickName, firstName = v.FirstName, middleName = v.MiddleName, lastName = v.LastName, mobile = v.MobileNo, referredBy = v.ReferredBy, createdDate = v.CreatedDate, formattedCreatedDate = v.CreatedDate.ToString(_dateFormat), createdBy = v.CreatedBy, modifiedDate = v.ModifiedDate, formattedModifiedDate = v.ModifiedDate.ToString(_dateFormat), modifiedBy = v.ModifiedBy, alternateMobile = vd.AlternateMobile, homePhone = vd.HomePhone, email = vd.Email, address = vd.Address, city = vd.City, state = vd.State }); }