Campo Pietra

2021 Campo Pietra Appassimento

Italien
2021
Rødvin
Error executing template "Designs/Swift/Paragraph/Swift_Custom_ProductVivinoRating.cshtml"
System.AggregateException: One or more errors occurred. ---> System.Net.Http.HttpRequestException: Response status code does not indicate success: 429 (Too Many Requests).
   at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
   at Smartpage.HttpClient.Client.HttpClientWrapper.<SendRequestAsync>d__3`1.MoveNext() in D:\a\1\s\Smartpage.HttpClient\Client\HttpClientWrapper.cs:line 114
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Smartpage.HttpClient.Client.HttpClientWrapper.<SendRequestAndDeserializeAsync>d__5`2.MoveNext() in D:\a\1\s\Smartpage.HttpClient\Client\HttpClientWrapper.cs:line 165
   --- End of inner exception stack trace ---
   at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
   at Smartpage.Vivino.Services.RatingService.GetRating(String vivinoId) in D:\a\1\s\Smartpage.Vivino\Services\RatingService.cs:line 73
   at Smartpage.Vivino.Services.RatingService.GetRating(ProductViewModel product) in D:\a\1\s\Smartpage.Vivino\Services\RatingService.cs:line 33
   at CompiledRazorTemplates.Dynamic.RazorEngine_1111849a9b7c419986f726a48f0d7fc9.Execute() in D:\dynamicweb.net\Solutions\Wineshop\Files\Templates\Designs\Swift\Paragraph\Swift_Custom_ProductVivinoRating.cshtml:line 35
   at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context, TextWriter reader)
   at RazorEngine.Templating.RazorEngineService.RunCompile(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
   at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass16_0.<RunCompile>b__0(TextWriter writer)
   at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)
   at Dynamicweb.Rendering.RazorTemplateRenderingProvider.Render(Template template)
   at Dynamicweb.Rendering.TemplateRenderingService.Render(Template template)
   at Dynamicweb.Rendering.Template.RenderRazorTemplate()
---> (Inner Exception #0) System.Net.Http.HttpRequestException: Response status code does not indicate success: 429 (Too Many Requests).
   at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
   at Smartpage.HttpClient.Client.HttpClientWrapper.<SendRequestAsync>d__3`1.MoveNext() in D:\a\1\s\Smartpage.HttpClient\Client\HttpClientWrapper.cs:line 114
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Smartpage.HttpClient.Client.HttpClientWrapper.<SendRequestAndDeserializeAsync>d__5`2.MoveNext() in D:\a\1\s\Smartpage.HttpClient\Client\HttpClientWrapper.cs:line 165<---


1 @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.ParagraphViewModel> 2 @using Dynamicweb.Core 3 @using Dynamicweb.Ecommerce.ProductCatalog 4 @using System.Globalization; 5 @using Smartpage.Vivino.Models 6 @using Smartpage.Vivino.Services 7 8 @* CUSTOM TEMPLATE SUPPORTED BY SWIFT (v1.21.0) *@ 9 10 @{ 11 ProductViewModel product = null; 12 if (Dynamicweb.Context.Current.Items.Contains("ProductDetails")) 13 { 14 product = (ProductViewModel)Dynamicweb.Context.Current.Items["ProductDetails"]; 15 } 16 else if (Pageview.Item["DummyProduct"] != null) 17 { 18 var pageViewModel = Dynamicweb.Frontend.ContentViewModelFactory.CreatePageInfoViewModel(Pageview.Page); 19 ProductListViewModel productList = pageViewModel.Item.GetValue("DummyProduct") != null ? pageViewModel.Item.GetValue("DummyProduct") as ProductListViewModel : new ProductListViewModel(); 20 21 if (productList?.Products is object) 22 { 23 product = productList.Products[0]; 24 } 25 } 26 27 string iconPath = "/Files/Templates/Designs/Swift/Assets/icons/"; 28 } 29 30 @if (product is object) 31 { 32 var vivinoId = Converter.ToString(product.ProductFields["SpVivinoId"]?.Value); 33 if (vivinoId.IsNotNullOrEmpty()) 34 { 35 var rating = Model.Item.GetBoolean("EnableLiveIntegration") ? new RatingService().GetRating(product)?.RatingAvg ?? 0 : Converter.ToDouble(product.ProductFields["SpVivinoRating"]?.Value); 36 if (rating > 0 && rating >= ((Model.Item.GetDouble("OnlyShowRatingsEqualHigherThen") > 0) ? Model.Item.GetDouble("OnlyShowRatingsEqualHigherThen") : Pageview.AreaSettings.GetItem("Custom").GetDouble("OnlyShowRatingsEqualHigherThen"))) 37 { 38 string horizontalAlign = Model.Item.GetRawValueString("HorizontalAlignment", ""); 39 horizontalAlign = horizontalAlign == "center" ? "text-center" : horizontalAlign; 40 horizontalAlign = horizontalAlign == "end" ? "text-end" : horizontalAlign; 41 42 string theme = !string.IsNullOrWhiteSpace(Model.Item.GetRawValueString("Theme")) ? " theme " + Model.Item.GetRawValueString("Theme").Replace(" ", "").Trim().ToLower() : ""; 43 44 string contentPadding = Model.Item.GetRawValueString("ContentPadding", ""); 45 contentPadding = contentPadding == "none" ? "px-0" : contentPadding; 46 contentPadding = contentPadding == "small" ? "p-2 p-md-2" : contentPadding; 47 contentPadding = contentPadding == "large" ? "p-3 p-md-3" : contentPadding; 48 49 <div class="fs-7 @horizontalAlign item_@Model.Item.SystemName.ToLower()"> 50 <span class="d-inline-flex @theme"> 51 <span class="icon icon-3 @contentPadding"> 52 @ReadFile(iconPath + "custom/vivino-custom.svg") 53 </span> 54 <span class="fw-bold @contentPadding"> 55 @string.Format(Translate("Custom:ProductVivinoRating.Xvivino", "{0} VIVINO"), rating.ToString(CultureInfo.InvariantCulture)) 56 </span> 57 </span> 58 </div> 59 } 60 else if (Pageview.IsVisualEditorMode) 61 { 62 <div class="alert alert-dark m-0" role="alert"> 63 <span>@Translate("Product vivino rating: The vivino rating will be shown here, if the product contains a valid vivino rating.")</span> 64 </div> 65 } 66 } 67 else if (Pageview.IsVisualEditorMode) 68 { 69 <div class="alert alert-dark m-0" role="alert"> 70 <span>@Translate("Product vivino rating: The vivino rating will be shown here, if the product allows it.")</span> 71 </div> 72 } 73 } 74 else if (Pageview.IsVisualEditorMode) 75 { 76 <div class="alert alert-warning">@Translate("No products available")</div> 77 }
Eksperternes vurdering
Luca Maroni 98 Point

Om vinen

Anmelderrost Campo Pietra Appassimento med masser af smag for pengene. Vinen er lavet på Appassimento-metoden, som man bla. kender fra Amarone. Vinen er fyldig med intense frugtnoter af brombær, kirsebær og modne blommer. Campo Pietra Appassimento har tidl. vundet hele 98P af Luca Maroni.

57,00 DKK

pr. fl. v/12

Før pris: 134,95 pr. fl.
InStock
Ved køb af 12 SPAR i alt 935 DKK
Tidsbegrænset tilbud

Sikker dansk webshop

Nye tilbud hver dag

Fri fragt over 799,-

Sikker fragt

Smagsgaranti

Dansk kundeservice


Hvordan er vores priser så lave?

Vi holder vores priser lave ved dagligt at overvåge det danske vinmarked og sikre, at vi altid tilbyder konkurrencedygtige priser på nøje udvalgte vine.


Flere skarpe tilbud til dig

Alle detaljer

Alkoholprocent:

15

Type:

Rødvin

Producent:

Campo Pietra

Flaskestørrelse:

Helflaske

Druesorter:

Negroamaro, Syrah, Merlot

Land:

Italien

Område:

Italien

Årgang:

2021

Restsukker:

Varenummer:

71181321

Lagring: