Добрый день!
Пытаюсь добавить SelectedValues в LookupEdit с помощью метода .AddValues(), но получаю ошибку:
Exception Message: Unsupported type: System.Guid. Use the JsonSerializer class to get the object's JSON representation.
Exception Type: System.ArgumentException
Exception Source: Newtonsoft.Json
Exception Stack Trace:
at Newtonsoft.Json.JsonWriter.WriteValue(Object value)
at Terrasoft.UI.WebControls.Utilities.Json.Converters.LookupSelectedValuesJsonConverter.WriteJson(JsonWriter writer, Object value, JsonSerializer serializer)
at Terrasoft.UI.WebControls.ClientConfig.ToExtConfig(PropertyInfo property, ClientConfigAttribute attr, Object objValue, Object defValue)
at Terrasoft.UI.WebControls.ClientConfig.Process(Object obj)
Кусок кода, вызывающий ошибку:
Dictionary LoadedSelectedValues = new Dictionary();
LoadedSelectedValues.Add(accountColumnName, text);
LoadedSelectedValues.Add("schemaUId", schemaUId);
Page.LookupEditSprRiskPremium.AddSelectedValue(riskRationaleId.ToString(), LoadedSelectedValues);
Terrasoft BPM 5.2.660
Нравится
Спасибо за Ваше обращение. Мы зарегистрировали его в Службе технической поддержки и назначили специалиста, который сможет Вас компетентно проконсультировать по данному вопросу.
Что записывается в accountColumnName?
У меня работает такое:
var entitySchema = userConnection.EntitySchemaManager.GetInstanceByUId(schemaUId); string primaryDisplayColumnName = entitySchema.GetPrimaryDisplayColumnName(); foreach (Entity entity in entityCollection) { Guid entityId = entity.GetTypedColumnValue<Guid>(entityIdColumnName); string entityName = entity.GetTypedColumnValue<string>(entityNameColumnName); Dictionary<string, object> values = new Dictionary<string, object>(); values.Add(primaryDisplayColumnName, entityName); values.Add("schemaUId", schemaUId); multiLookupEdit.SelectedValues.Add(entityId.ToString(), values); }
Обратите внимание на тип переменной values, дело может быть в ней.