[BUG] Exception when editing LinkItemCollection property when a linkitem has encoded character(s)

Vote:
 

ErrorNewtonsoft.Json.JsonReaderException: Unterminated string. Expected delimiter: ". Path '[1].text', line 1, position 287.

Reproduce:

  1. Create a page with a LinkItemCollection property.
  2. Create another page with a name like 'This & That'.
  3. Add this page to the LinkItemCollection property.
  4. Save, reload and re-open the property.

 

Workaround:

Edit the property in Classic Edit mode.

 

Stack trace:

[JsonReaderException: Unterminated string. Expected delimiter: ". Path '[1].text', line 1, position 287.]
   Newtonsoft.Json.JsonTextReader.ReadStringIntoBuffer(Char quote) +1209
   Newtonsoft.Json.JsonTextReader.ParseString(Char quote) +40
   Newtonsoft.Json.JsonTextReader.ParseValue() +459
   Newtonsoft.Json.JsonTextReader.ReadInternal() +64
   Newtonsoft.Json.JsonReader.ReadAsStringInternal() +31
   Newtonsoft.Json.Serialization.JsonSerializerInternalReader.ReadForType(JsonReader reader, JsonContract contract, Boolean hasConverter) +149
   Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id) +1858
   Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue) +452
   Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue) +188
   Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList(IWrappedCollection wrappedList, JsonReader reader, JsonArrayContract contract, JsonProperty containerProperty, String id) +1726
   Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue, String id) +311
   Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue) +245
   Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent) +867
   Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType) +529
   EPiServer.UI.Edit.EditProperty.ApplyPostedValue() +355
   EPiServer.UI.Edit.EditProperty.Page_Init(Object sender, EventArgs e) +183
   System.Web.UI.Page.OnInit(EventArgs e) +102
   EPiServer.UI.ContentBaseWebForm.OnInit(EventArgs e) +16
   System.Web.UI.Control.InitRecursive(Control namingContainer) +186
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2098

    

#64443
Dec 20, 2012 14:53
This thread is locked and should be used for reference only. Please use the Episerver CMS 7 and earlier versions forum to open new discussions.
* You are NOT allowed to include any hyperlinks in the post because your account hasn't associated to your company. User profile should be updated.