public virtual async Task <string> GetDynamicContentHtmlAsync(string storeId, string placeholderName) { string htmlContent = null; var evalContext = _workContextAccessor.WorkContext.ToDynamicContentEvaluationContext(); evalContext.PlaceName = placeholderName; evalContext.StoreId = storeId; var result = await _dynamicContentEvaluator.EvaluateDynamicContentItemsAsync(evalContext); if (result != null) { var htmlContentSpec = new HtmlDynamicContentSpecification(); var htmlDynamicContent = result.FirstOrDefault(htmlContentSpec.IsSatisfiedBy); if (htmlDynamicContent != null) { var dynamicProperty = htmlDynamicContent.DynamicProperties.FirstOrDefault(htmlContentSpec.IsSatisfiedBy); if (dynamicProperty != null && dynamicProperty.Values.Any(v => v.Value != null)) { htmlContent = dynamicProperty.Values.First().Value.ToString(); } } } return(htmlContent); }
public async Task <ActionResult <string> > GetDynamicContent(string placeName) { string htmlContent = null; var evalContext = WorkContext.ToDynamicContentEvaluationContext(); evalContext.PlaceName = placeName; var result = await _dynamicContentEvaluator.EvaluateDynamicContentItemsAsync(evalContext); if (result != null) { var htmlContentSpec = new HtmlDynamicContentSpecification(); var htmlDynamicContent = result.FirstOrDefault(htmlContentSpec.IsSatisfiedBy); if (htmlDynamicContent != null) { var dynamicProperty = htmlDynamicContent.DynamicProperties.FirstOrDefault(htmlContentSpec.IsSatisfiedBy); if (dynamicProperty != null && dynamicProperty.Values.Any(v => v.Value != null)) { htmlContent = dynamicProperty.Values.First().Value.ToString(); } } } return(htmlContent); }