What language branches does your startpage exist on?
Also what is the MasterLanguageBranch for the startpage?
It's set to en-GB for both. It's not actually a multi-lingual site, globalisation and browser language detection are both disabled.
This is still proving quite odd, but I've been able to replicate it reliably and really narrowed down on it. However it does seem extremely weird - I'll try describe it a little.
So I have my start page model and I use some content areas and blocks on it, but the one that seems to cause my issue is GuidesBlock.
[ContentType( GUID = "e1fcb1b8-c6e0-4f19-a287-ae06b4252867", GroupName = Globals.GroupNames.System)] [Icon] [AvailableContentTypes( Availability.Specific, Include = new[] { typeof(StandardPage) }, Exclude = new[] { typeof(IListPageItem) }, ExcludeOn = new[] { typeof(IBase) })] public class StartPage : BasePageData { ... [Editable(true)] [Display( GroupName = SystemTabNames.Content, Order = 450)] public virtual GuidesBlock GuidesBlock { get; set; } ... }
This is on my view as below:
...
<>>EPiServer:Property runat="server" PropertyName="RightContentArea" CssClass="col-sm-12 col-md-3"> <>>RenderSettings Tag="Right" ChildrenCssClass="col-sm-6 col-md-12" /> EPiServer:Property> <>>EPiServer:ContentRenderer runat="server" ID="BlogListing" CssClass="col-md-6" /> <>>div class="col-md-3"> <>>EPiServer:Property runat="server" PropertyName="GuidesBlock" /> div> <>>EPiServer:ContentRenderer runat="server" ID="NewsListing" CssClass="col-md-3" /> div> <>>EPiServer:Property runat="server" PropertyName="FootContentArea" CssClass="row"> <>>RenderSettings Tag="Grid,Columns4" /> EPiServer:Property>
...
If I remove the property for GuidesBlock I don't get the error on hitting the home page on app start.
Now guides block only looks as below:
public class GuidesBlock : BaseBlockData { [Display( GroupName = SystemTabNames.Content, Order = 100)] [CultureSpecific] public virtual string Title { get; set; } [Display( GroupName = SystemTabNames.Content, Order = 200)] [UIHint(UIHint.MediaFile)] [AllowedTypes(typeof(DocumentFile))] public virtual ContentReference Document1 { get; set; } [Display( GroupName = SystemTabNames.Content, Order = 225)] [UIHint(UIHint.Image)] public virtual ContentReference Document1Image { get; set; } [Display( GroupName = SystemTabNames.Content, Order = 300)] [UIHint(UIHint.MediaFile)] [AllowedTypes(typeof(DocumentFile))] public virtual ContentReference Document2 { get; set; } [Display( GroupName = SystemTabNames.Content, Order = 325)] [UIHint(UIHint.Image)] public virtual ContentReference Document2Image { get; set; } [Editable(true)] [Display( GroupName = SystemTabNames.Content, Order = 400)] public virtual Url Link { get; set; } [CultureSpecific] [Editable(true)] [Display( GroupName = SystemTabNames.Content, Order = 500)] public virtual string LinkText { get; set; } }
But what is really odd is a looked at the data and if I visit the link property for the GuideBlock the home page will then work afterwards, it's the only page I've found that actually does this. So I'm wondering is this a bug of some sort?
The data is below, the link attributed to that block on the homepage is ~/link/b88f415792564380815a14c60b2b4abe.aspx:
pkID fkPropertyDefinitionID fkContentID fkLanguageBranchID ScopeName guid Boolean Number FloatNumber ContentType ContentLink Date String LongString LongStringLength LinkGuid
11304 382 7 2 .401.382. BE8B497E-A5DB-4045-9A3D-9E476F36DDE7 0 NULL NULL NULL NULL NULL NULL Guides 6 NULL
11305 383 7 2 .401.383. 12E5E958-EB6D-4C35-B14E-4BA588F0E744 0 NULL NULL NULL 1663 NULL NULL NULL 0 BDDB9416-839D-4DC9-BBA3-3588A12DAEA3
11306 384 7 2 .401.384. A3AC644F-4B9A-4F9D-B4A6-EA431F885109 0 NULL NULL NULL 1672 NULL NULL NULL 0 01ED4F6A-07D8-4E68-ADBE-C1935124012F
11307 385 7 2 .401.385. 90F04DA7-2D05-465E-B94F-95ADE25EADFE 0 NULL NULL NULL 1664 NULL NULL NULL 0 9654468B-62B7-49A6-9B98-9CB6B4437182
11308 386 7 2 .401.386. C94D010F-4C0E-4520-942F-87C8EF6EF3F1 0 NULL NULL NULL 1673 NULL NULL NULL 0 DB04FE53-5260-4549-9481-8549D328D809
11309 387 7 2 .401.387. 5EA97C41-8F1C-4017-97D7-40CC37C17398 0 NULL NULL NULL NULL NULL ~/link/b88f415792564380815a14c60b2b4abe.aspx NULL 0 NULL
11310 388 7 2 .401.388. 9D4951F3-E206-47AA-B30D-DEB334C02C6A 0 NULL NULL NULL NULL NULL NULL View all brochures 18 NULL
Okay, I have even more detail - the error only occurs dependent on where the link is linking to in the hierarchy.
So if I look to /media-centre/ in my tree or any other immediate child of the home page then no error - if however I link to any second level page i.e. /media-centre/press-releases/ I get the error on hitting the home page. Have been able to replicate it every time now.
If I get chance I'm going to try spin up a new empty EPiServer project to test in a clean install but I can't help think this must be a bug now.
Okay so turns out it has something to do with the fact that I'm trying to get the string resolution of the URL to build up mark-up i.e.
this.CurrentData.Link.ToString()
I'm not sure why that seems to make such a difference, just need to figure out how I should get the proper URL string from the URL type.
I've been having some perculiar issues with a site I've been building. Specifically when I hit the home page of our site on our UAT server after the application has first cycled up I get a 500 error and see the error below in the logs.
I can visit other pages if I navigate to them directly, and if I change the home page and publish I can then hit it up until the application pool is recycle or I recycle it when I get the error page again.
I'm at a loss as to what's going on here.
2014-07-02 12:17:20,129 [12] ERROR EPiServer.Global: 1.2.5 Unhandled exception in ASP.NETb__24() >
System.Globalization.CultureNotFoundException: Culture is not supported.
Parameter name: name
en-GB" is an invalid culture identifier.
at System.Globalization.CultureInfo.GetCultureInfo(String name)
at EPiServer.Core.LanguageSelectorContext.get_SelectedLanguageBranch()
at EPiServer.DefaultContentProvider.LoadContent(ContentReference contentLink, ILanguageSelector languageSelector)
at EPiServer.Core.ContentProvider.<>c__DisplayClass26.
at EPiServer.Core.OptimisticCache`1.Read(String cacheKey, ReadAndCacheObject`1 readAndCacheObject)
at EPiServer.Core.ContentProvider.LoadContentFromCacheOrRepository(ContentReference contentreference, ILanguageSelector selector)
at EPiServer.Core.ContentProvider.Load(ContentReference contentLink, ILanguageSelector selector)
at EPiServer.DataFactory.TryGet[T](ContentReference contentLink, ILanguageSelector languageSelector, T& content)
at EPiServer.Web.Routing.UrlResolver.GetVirtualPathInternal(ContentReference contentLink, String language, VirtualPathArguments arguments)
at EPiServer.Web.Routing.UrlResolver.GetUrl(ContentReference contentLink, String language)
at EPiServer.Web.HierarchicalUrlRewriteProvider.ConvertToExternalInternal(UrlBuilder url, Object internalObject, Encoding toEncoding)
at EPiServer.Web.HierarchicalUrlRewriteProvider.ConvertToExternal(UrlBuilder url, Object internalObject, Encoding toEncoding)
at EPiServer.Web.FriendlyHtmlRewriteToExternal.HtmlRewriteUrl(UrlBuilder internalUrl, UrlBuilder externalUrl, UrlBuilder url, Encoding encoding, RebaseAction rebase, Object& internalObject)
at EPiServer.Web.FriendlyHtmlRewriteToExternal.rewritePipe_HtmlRewriteUrl(Object sender, HtmlRewriteEventArgs e)
at EPiServer.Web.HtmlRewritePipe.WriteElement(MyHtmlRewriteEventArgs e, SgmlReader reader, TextWriter writer)
at EPiServer.Web.HtmlRewritePipe.RewriteToEnd(TextReader reader, TextWriter writer)
at EPiServer.Web.HtmlRewriteStream.Close()
at System.Web.HttpWriter.FilterIntegrated(Boolean finalFiltering, IIS7WorkerRequest wr)
at System.Web.HttpResponse.FilterOutput()
at System.Web.HttpApplication.CallFilterExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)