Exception in template (ItemPublisher/List/Case_List.cshtml): System.ArgumentOutOfRangeException: StartIndex cannot be less than zero.
Parameter name: startIndex
   at System.String.Remove(Int32 startIndex, Int32 count)
   at CompiledRazorTemplates.Dynamic.efeddfc.Execute()
   at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context)
   at RazorEngine.Razor.Parse[T](String razorTemplate, T model, String cacheName)
   at Dynamicweb.Rendering.Template.Output()
@using System.Text.RegularExpressions @using System.Web @{ var items = GetLoop("ItemPublisher:Items.List"); var canEdit = GetBoolean("ItemPublisher:Items.CanEdit"); var fields = GetLoop("ItemPublisher:ItemType.Fields"); int imageWidth = 260; int imageHeight = 260; int crop = 0; string queryString = HttpContext.Current.Request.QueryString["CaseId"]!=null ? HttpContext.Current.Request.QueryString["CaseId"].ToString() : string.Empty; var url = GetGlobalValue("Global:Pageview.Url"); string pageUrl = "/Default.aspx?ID="+GetGlobalValue("Global:Page.ID"); } @if(items.Count > 0 && string.IsNullOrEmpty(queryString)){ <div class="items col-xs-12"> <div class="items-list row"> @foreach (LoopItem i in items){ int id = i.GetInteger("ItemPublisher:Item.Field.Id"); int counter = i.GetInteger("ItemPublisher:Items.List.LoopCounter"); string headline = i.GetString("ItemPublisher:Item.Headline"); int overviewImageWidth = 400; int overviewImageHeight = 400; string overView_imagePath = i.GetString("ItemPublisher:Item.Overview_Image"); string imageFixed = !string.IsNullOrWhiteSpace(overView_imagePath) ? "/Admin/Public/getImage.ashx?Image=" + overView_imagePath + "&Format=jpg&Width=" + overviewImageWidth + "&Height=" + overviewImageHeight + "&Crop="+crop : string.Empty; string overView_text = i.GetString("ItemPublisher:Item.Overview_Text"); string overView_url = i.GetString("ItemPublisher:Item.DetailsUrl"); string overView_link = pageUrl+"&CaseId=Case:"+id; string projectListElementClass = "col-xs-12 col-sm-6 col-md-4 project-list-element"; projectListElementClass += (counter-1)%3==0 ? " clear-fix" : ""; <div class="@projectListElementClass" onclick="location.href='@(!string.IsNullOrWhiteSpace(overView_link) ? overView_link : overView_url)'"> <h3>@headline</h3> <img src="@imageFixed" class="img-responsive"/> <p class="overview_Text">@overView_text</p> <p class="readMore btn btn-default">Læs mere</p> </div> } </div> </div> } else if(items.Count > 0){ int skipable = Convert.ToInt32(queryString.Replace("Case:", "")); foreach (LoopItem i in items.Skip(skipable-1).Take(1)){ string itemText = i.GetString("ItemPublisher:Item.List_text.Value"); int itemAmountOfLetters = i.GetInteger("ItemPublisher:Item.List_AmountOfLetters"); if(string.IsNullOrWhiteSpace(itemText) && itemAmountOfLetters > 0){ string itemContent = Regex.Replace(i.GetString("ItemPublisher:Item.Content.Value"), "<.*?>", string.Empty); string itemTextCleanView = itemContent.Substring(0, Math.Min(itemContent.Length, itemAmountOfLetters)); itemText = itemContent.Length>itemAmountOfLetters ? itemTextCleanView+"..." : itemTextCleanView; } string imageFixed = !string.IsNullOrWhiteSpace("itemImage") ? "/Admin/Public/getImage.ashx?Image=" + "itemImage" + "&Format=jpg&Width=" + imageWidth + "&Height=" + imageHeight + "&Crop="+crop : string.Empty; int id = i.GetInteger("ItemPublisher:Item.Field.Id"); int counter = i.GetInteger("ItemPublisher:Items.List.LoopCounter"); string headline = i.GetString("ItemPublisher:Item.Headline"); if(queryString == "Case:"+id){ var slider = i.GetLoop("ItemPublisher:Item.Slides"); string content_headline = i.GetString("ItemPublisher:Item.Headline"); string content_text = i.GetString("ItemPublisher:Item.Content"); string externalLink = i.GetString("ItemPublisher:Item.Link"); string prevPage = string.Empty; string nextPage = string.Empty; int place = url.LastIndexOf(queryString); int prevId = id==1 ? items.Count : id-1; int nextId = id==items.Count ? 1 : id+1; prevPage = url.Remove(place, queryString.Length).Insert(place, "Case:"+prevId); nextPage = url.Remove(place, queryString.Length).Insert(place, "Case:"+nextId); <div> @if(!string.IsNullOrWhiteSpace(headline)){ <h1 class="project-title">@headline</h1> } <div class="project-nav"> <a href="@pageUrl" class="project-button project-button-overview btn btn-default"><span class="glyphicon glyphicon-arrow-left"></span> Oversigten</a> <a href="@prevPage" class="project-button project-button-prev btn btn-default"><span class="glyphicon glyphicon-arrow-left"></span></a> <a href="@nextPage" class="project-button project-button-next btn btn-default"><span class="glyphicon glyphicon-arrow-right"></span></a> </div> @if(slider.Count>0){ var sliderListId = string.Format("bxslider-{0}", id); var sliderContainerId = string.Format("slider-frame-{0}", id); <div class="slider-frame" id="@sliderContainerId"> <ul class="bxslider list-unstyled" id="@sliderListId"> @for(var s = 0; slider.Count > s; s++){ var item = slider[s]; var imageUrl = item.GetValue("ItemPublisher:Item.Slides.Baggrundsbillede"); string imageslider_Link = item.GetString("ItemPublisher:Item.Slides.Link"); string overskrift = item.GetString("ItemPublisher:Item.Slides.Overskrift"); string tekst = item.GetString("ItemPublisher:Item.Slides.Tekst"); string statement = item.GetString("ItemPublisher:Item.Slides.Statement"); string imgAlt = item.GetString("ItemPublisher:Item.Slides.Alt_tekst"); string onClick = string.Empty; string mouseStyle = string.Empty; if(!string.IsNullOrEmpty(imageslider_Link)){ onClick="location.href='/"+imageslider_Link+"'"; mouseStyle="cursor:pointer;"; } <li class="sliderItem" onclick="@onClick" style="@mouseStyle"> <img src="@imageUrl" alt="@imgAlt" /> @if(!string.IsNullOrEmpty(statement)){ <div class="bx-statement"> <h1>@statement</h1> </div> } @if((!string.IsNullOrEmpty(overskrift) || !string.IsNullOrEmpty(tekst))){ <div class="bx-caption"> <h2>@overskrift</h2> <p>@tekst</p> </div> } </li> } </ul> </div> <script> $(document).ready(function(){ if(boxSlider == undefined){ boxSlider = [{sliderList:'#@sliderListId', slideOptions: {captions: "true", auto: @(slider.Count>1 ? "true" : "false"), pager: @(slider.Count>1 ? "true" : "false")}}]; } else { boxSlider.push({sliderList:'#@sliderListId', slideOptions: {captions: "true", auto: @(slider.Count>1 ? "true" : "false"), pager: @(slider.Count>1 ? "true" : "false")}}); } }); </script> } @if(!string.IsNullOrWhiteSpace(content_headline)){ <h2>@content_headline</h2> } @if(!string.IsNullOrWhiteSpace(content_text)){ <text>@content_text</text> } @if(!string.IsNullOrWhiteSpace(externalLink)){ <a href="@externalLink" target="_blank">Besøg @headline</a> } </div> break; } } }
Del siden:

Ingeniørfirmaet Anders Rahbek   ·   Mollerup Bygade 17   ·   8600 Silkeborg   ·   Tlf. 86 80 35 45   ·   anders@anders-rahbek.dk

 

Skabertrang | Silkeborg Bogtryk