Error executing template "Designs/exhibition_site/eCom/Product/MCH365-profile.cshtml" System.Data.SqlClient.SqlException (0x80131904): A connection was successfully established with the server, but then an error occurred during the login process. (provider: SSL Provider, error: 0 - An existing connection was forcibly closed by the remote host.) ---> System.ComponentModel.Win32Exception (0x80004005): An existing connection was forcibly closed by the remote host at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection) at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection) at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection) at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions) at System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource`1 retry) at System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry) at System.Data.SqlClient.SqlConnection.Open() at Dynamicweb.Data.DatabaseConnectionProvider.CreateConnection(Boolean open) at Dynamicweb.Data.Database.CreateConnection() at Dynamicweb.Data.Database.CreateDataReader(CommandBuilder commandBuilder, IDbConnection connection, IDbTransaction transaction, Int32 commandTimeout) at Dynamicweb.Ecommerce.Products.ProductRepository.GetProductById(String productId, String productVariantId, String productLanguageId) at Dynamicweb.Ecommerce.Products.ProductService.FetchMissingProductsInternal(IProductRepository repo, IEnumerable`1 keys) at Dynamicweb.Caching.ServiceCache`2.GetCache(IEnumerable`1 keys) at Dynamicweb.Caching.ServiceCache`2.GetCache(TKey key) at Dynamicweb.Ecommerce.Products.ProductService.GetProductById(String productId, String productVariantId, String productLanguageId, User user, Boolean showUntranslated) at Dynamicweb.Ecommerce.Products.ProductService.GetProductById(String productId, String productVariantId, String productLanguageId, Boolean useAssortments) at Dynamicweb.Ecommerce.Products.ProductService.GetProductById(String productId, String productVariantId, String productLanguageId) at Co3.MCH.Website.Frontend.Repositories.BaseRepository.GetAsset[T](String assetId) in C:\Data\Development\git\mch365mb-dev\Co3.MCH.Website.Frontend\Repositories\BaseRepository.cs:line 201 at Co3.MCH.Website.Frontend.Repositories.ContactPersonRepository.GetContactPersons(Profile profile, MCH365ViewType viewType) in C:\Data\Development\git\mch365mb-dev\Co3.MCH.Website.Frontend\Repositories\ContactPersonRepository.cs:line 45 at Co3.MCH.Website.Frontend.Services.MCH365.ContactPersonService.GetContactPersons(Profile profile, MCH365ViewType viewType) in C:\Data\Development\git\mch365mb-dev\Co3.MCH.Website.Frontend\Services\MCH365\ContactPersonService.cs:line 148 at Co3.MCH.Website.Frontend.Services.MCH365.ContactPersonService.GetContactPersonProducts(Profile profile, MCH365ViewType viewType) in C:\Data\Development\git\mch365mb-dev\Co3.MCH.Website.Frontend\Services\MCH365\ContactPersonService.cs:line 444 at Co3.MCH.Website.Frontend.Models.Frontend.Ecommerce.PresentationProduct.get_ContactPersons() in C:\Data\Development\git\mch365mb-dev\Co3.MCH.Website.Frontend\Models\Frontend\Ecommerce\PresentationProduct.cs:line 81 at CompiledRazorTemplates.Dynamic.RazorEngine_2f805c92f32c453cb8922310c01da9dc.Execute() in E:\Websites\mch365.espresso5.dk\Files\Templates\Designs\exhibition_site\eCom\Product\MCH365-profile.cshtml:line 29 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() ClientConnectionId:f5ff7822-9e0e-4108-ba49-30c819bae4c6 Error Number:10054,State:0,Class:201 @inherits Co3.Espresso.Website.TemplateBases.Paragraphs.Module 2 @using System.Text.RegularExpressions 3 @using Co3.Espresso.Base.Extensions 4 @using Co3.Espresso.Website.Services 5 @using Co3.Espresso.Website.Models.FrontEnd 6 @using Co3.Espresso.Website.Models.FrontEnd.Settings 7 @using Co3.MCH.Data.Models.MCH365 8 @using Co3.MCH.Website.Frontend.Helpers 9 @using Co3.MCH.Website.Frontend.Models.Frontend 10 @using Co3.MCH.Website.Frontend.Models.Frontend.Ecommerce 11 @using Dynamicweb.Core 12 13 @{ 14 ProfileProduct espressoProduct = Co3.MCH.Website.Frontend.Services.Ecommerce.ProductService.Instance.GetEspressoProduct( 15 new ProductSettings() 16 { 17 Id = GetString("Ecom:Product.ID"), 18 VariantId = GetString("Ecom:Product.VariantID"), 19 PrimaryVariantId = GetString("Ecom:Product.DefaultVariantComboID"), 20 EmbeddedInModelList = false 21 }, nameof(ProfileProduct) 22 ) as ProfileProduct; 23 24 // EXAMPLE 25 bool hasPresentation = espressoProduct.HasPresentation; 26 int presentationContactPersons = 0; 27 if (hasPresentation) 28 { 29 presentationContactPersons = espressoProduct.Presentation.ContactPersons.Products.Count(); 30 } 31 32 IEnumerable<BoothInfo> booths = espressoProduct.Booths; 33 34 // CUSTOM COMPANY FIELDS 35 string companyDescriptionFormatted = espressoProduct.Company.DescriptionFormatted; 36 37 string companyDescriptionFormattedStrippedHtml = companyDescriptionFormatted.StripHtml(); 38 39 string companyDescriptionFormattedMetaDesc = !string.IsNullOrEmpty(companyDescriptionFormattedStrippedHtml) ? companyDescriptionFormattedStrippedHtml : espressoProduct.Company.Name; 40 41 if ( companyDescriptionFormattedStrippedHtml.Length > 160 ) 42 { 43 companyDescriptionFormattedMetaDesc = !string.IsNullOrEmpty(companyDescriptionFormattedStrippedHtml) ? companyDescriptionFormattedStrippedHtml.Substring(0, 160) : espressoProduct.Company.Name; 44 } 45 46 string companyColor = ""; 47 48 if (espressoProduct.Company.BrandColor.IsNullOrEmpty()) 49 { 50 companyColor = MCH365Context.Current.TradeShowDetails.PrimaryColor; 51 } 52 else 53 { 54 companyColor = espressoProduct.Company.BrandColor; 55 } 56 57 // CUSTOM COMPANY COLOR SCHEME 58 Regex hexcodeRegex = new Regex(@"^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$"); 59 companyColor = hexcodeRegex.IsMatch( companyColor ) ? companyColor : "#000000"; 60 ColorHelper.HSL brandExhibitor = ColorHelper.Instance.HexToHsl(companyColor); 61 62 ViewBag.TextColor = brandExhibitor.L < 60 ? "e-text-light" : "e-text-dark"; 63 64 // VIDEO 65 string presentationVideo = ""; 66 67 if (espressoProduct.Presentation != null && espressoProduct.Presentation.Video != null && !string.IsNullOrEmpty(espressoProduct.Presentation.Video)) 68 { 69 string presentationVideoRaw = espressoProduct.Presentation.Video; 70 71 if (presentationVideoRaw.Contains("https://vimeo.com/")) 72 { 73 presentationVideo = "https://player.vimeo.com/video/" + (presentationVideoRaw.Replace("https://vimeo.com/", "")); 74 } 75 else if (presentationVideoRaw.Contains("https://youtu")) 76 { 77 presentationVideo = ("https://www.youtube.com/embed/" + presentationVideoRaw.Replace("https://youtu.be/", "").Replace("https://www.youtube.com/embed/", "")); 78 } 79 else if (presentationVideoRaw.Contains("https://www.youtube.com/watch?v=")) 80 { 81 presentationVideo = ("https://www.youtube.com/embed/" + presentationVideoRaw.Replace("https://www.youtube.com/watch?v=", "")); 82 } 83 else 84 { 85 presentationVideo = ("https://www.youtube.com/embed/" + presentationVideoRaw); 86 } 87 } 88 } 89 90 <style> 91 :root { 92 --exhibitor-color: @brandExhibitor.ToString(); 93 --exhibitor-color-darken: @brandExhibitor.Darken(10).ToString(); 94 --exhibition-profile-exhibitor-brand-color: hsl(var(--exhibitor-color)); 95 --exhibition-profile-exhibitor-brand-color-darken: hsl(var(--exhibitor-color-darken)); 96 --exhibition-profile-exhibitor-brand-color-opaque: hsla(var(--exhibitor-color), 0.85); 97 } 98 99 .breadcrumb.nav { 100 background-color: var(--exhibition-profile-exhibitor-brand-color-darken); 101 } 102103 </style> 104105 @RenderingService.Instance.SectionEnd() 106 @RenderingService.Instance.PartialView("ecom/product/partials/profile-details/MCH365-topsection.cshtml", espressoProduct) 107 @RenderingService.Instance.SectionStart(new SectionSettings 108 { 109 Classes = new ClassList("e-section mch365-custom-product-details-wrapper") 110 }) 111112113 @RenderingService.Instance.PartialView("ecom/product/partials/profile-details/MCH365-sidebar.cshtml", espressoProduct) 114 <div class="col-12 col-md-8 col-lg-9 p-columns mch365-custom-product-details-wrapper-main-content"> 115116 <div class="row align-items-end pt-3"> 117 <div class="col-12 col-md-6 col-lg-7"> 118 @if ( hasPresentation ) 119 { 120 <p class="lead font-weight-light mb-0">@Translate( "MCH365 - Exhibitor details topSectionFairInfoOn - Text", "på" ) @MCH365Context.Current.TradeShowDetails.Name</p> 121 } 122 <h1 class="mega my-0">@espressoProduct.Company.Name</h1> 123 </div> 124 @if (booths != null) 125 { 126 <div class="col-12 col-md-6 col-lg-5 mt-3 mt-md-0 d-flex flex-column justify-content-md-end align-items-md-end"> 127 <p class="h4 mb-0">@Translate("Stand")</p> 128 @if (booths.Count() == 1) 129 { 130 BoothInfo booth = booths.FirstOrDefault(); 131 if (booth.Hall != null && booth.Booth != null) 132 { 133 <h2 class="mb-0 font-weight-extrabold mt-0"> 134 <span class="enlarge-text">@booth.Hall.Name</span> @booth.Booth.Number 135 </h2> 136 } 137 } 138 else 139 { 140 <div class="d-flex flex-wrap justify-content-md-end w-100" style="column-gap: 1em;"> 141 @foreach (BoothInfo booth in booths) 142 { 143144 if (booth.Hall != null && booth.Booth != null) 145 { 146 <h2 class="small mt-0 mb-0 font-weight-extrabold flex-nowrap"> 147 @booth.Hall.Name <span class="text-downsize-notched">@booth.Booth.Number</span> 148 </h2> 149 } 150 } 151 </div> 152 } 153 </div> 154 } 155 <div class="col-12 pt-1"> 156 <hr/> 157 </div> 158 </div> 159160 <div class="row mt-2"> 161 <div class="col-12"> 162 <div class="row"> 163 <div class="col-12 col-lg-8 mb-2 pr-lg-2 pr-xl-3" id="presentation"> 164 @if (!string.IsNullOrEmpty(companyDescriptionFormatted)) 165 { 166 <p>@companyDescriptionFormatted</p> 167 } 168 else 169 { 170 <h4>@Translate("MCH365 - Exhibitor details descriptionNoInfoHeader - Heading", "Vi har registreret udstilleren som leverandør eller udstiller på messen.")</h4> 171 <p>@Translate("MCH365 - Exhibitor details descriptionNoInfoText - Text", "Dog har de endnu ikke oplyst yderligere beskrivelse på deres profil.")</p> 172 } 173174175 </div> 176 @if (espressoProduct.ContactPersons.Products.Any()) 177 { 178 @RenderingService.Instance.PartialView("ecom/product/partials/profile-details/MCH365-contactpersons.cshtml", espressoProduct) 179 } 180 </div> 181182 @if (espressoProduct.Products.Products.Any()) 183 { 184 <div class="row"> 185 @RenderingService.Instance.PartialView("ecom/product/partials/profile-details/MCH365-products.cshtml", espressoProduct) 186 </div> 187 } 188 @if (espressoProduct.Articles.Products.Any()) 189 { 190 <div class="row"> 191 @RenderingService.Instance.PartialView("ecom/product/partials/profile-details/MCH365-articles.cshtml", espressoProduct) 192 </div> 193 } 194 @if (espressoProduct.Cases.Products.Any()) 195 { 196 <div class="row"> 197 @RenderingService.Instance.PartialView("ecom/product/partials/profile-details/MCH365-cases.cshtml", espressoProduct) 198 </div> 199 } 200 @if (espressoProduct.Events.Products.Any()) 201 { 202 <div class="row"> 203 @RenderingService.Instance.PartialView("ecom/product/partials/profile-details/MCH365-events.cshtml", espressoProduct) 204 </div> 205 } 206207 </div> 208 </div> 209 </div> 210 @RenderingService.Instance.SectionEnd() 211 @RenderingService.Instance.SectionStart(new SectionSettings()) 212213 @SnippetStart("profileProductCompanyDescription")@companyDescriptionFormattedMetaDesc@SnippetEnd("profileProductCompanyDescription") @* Avoid using linebreaks in this snippet, as it will also add linebreaks to the content *@
Responsibility for content on this site
Information, images, product descriptions, videos, certifications, sustainability claims, and other content on company profiles are uploaded and maintained by the individual exhibitors.
Exhibitors are solely responsible for ensuring that their content is accurate, properly documented, and legally compliant, including compliance with applicable regulations concerning marketing, sustainability claims, and intellectual property rights.
MCH A/S solely provides the platform and does not, as a general rule, verify the content.