public static ProductVariantDetail RemoveReferences(this ProductVariantDetail item) { var obj = new ProductVariantDetail(); obj = item?.RemoveReference(); if (item?.Product != null) { obj.Product = new Product(); obj.Product = item.Product.RemoveReference(); } if (item?.ProductVariantOptions.Count > 0) { obj.ProductVariantOptions = new List <Models.ProductVariantOption>(); obj.ProductVariantOptions = item.ProductVariantOptions.ToList().RemoveReferences(); } if (item?.ProductImages.Count > 0) { obj.ProductImages = new List <Models.ProductImage>(); obj.ProductImages = item.ProductImages.ToList().RemoveReferences(); } if (item?.CartItems != null && item.CartItems.Count > 0) { obj.CartItems = new List <Models.CartItem>(); obj.CartItems = item.CartItems.ToList().RemoveReferences(); } return(obj); }