Страница 1 из 1
Регистрация Nullable-типов в DataStore
Добавлено: 16 май 2013, 12:02
fulldiesel
Здравствуйте. После регистрации Nullable-типов в DataStore, можно обнаружить что в самом DataStore, в описании Columns типы уже будут не Nullable. В примере приведенном ниже свойство из long? в DataStore будет иметь тип long. Так и должно быть?
Код: Выделить всё
...
private StiReport _stiReport;
...
private void RegMethod()
{
object data = new SomeClass {NullableLongProperty = 2};
_stiReport.RegData("SomeName", data);
}
...
private class SomeClass
{
public long? NullableLongProperty { get; set; }
}
Re: Регистрация Nullable-типов в DataStore
Добавлено: 17 май 2013, 15:43
HighAley
Здравствуйте.
Попробуйте использовать метод RegBusinessObject().
Спасмибо.
Re: Регистрация Nullable-типов в DataStore
Добавлено: 21 май 2013, 07:19
fulldiesel
В этом случае коллекция Items в DataStore будет пустой =(
Re: Регистрация Nullable-типов в DataStore
Добавлено: 21 май 2013, 11:15
HighAley
Здравствуйте.
Тогда попробуйте после RegBusinessObject() вызвать _stiReport.Dictionary.SynchronizeBusinessObjects(3);?
Если это не поможет, то нам необходимо увидеть простой проект, который воспроизводит проблему.
Спасибо.
Re: Регистрация Nullable-типов в DataStore
Добавлено: 22 май 2013, 08:06
fulldiesel
Спасибо, помогло. Все здорово, но только если списки двухуровневые (элементы списка содержат коллекции элементов другого типа), регистрация вложенных списков в словаре через код не происходит. В документации нашел только вариант с ручным созданием в дизайнере дочерних списков, а вот как это делается через код, так и не нашел. Помогите пожалуйста.
Re: Регистрация Nullable-типов в DataStore
Добавлено: 22 май 2013, 14:55
HighAley
Здравствуйте.
Мы не можем ответить на ваш вопрос, так как не видем структуры ваших бизнес-объектов.
Какой вариант вы машли в документации?
Аргумент в методе SynchronizeBusinessObjects() задаёт глубину бизнес-объекта, возможно вам просто надо его увеличить.
Спасибо.
Re: Регистрация Nullable-типов в DataStore
Добавлено: 22 май 2013, 15:31
fulldiesel
Спасибо, SynchronizeBusinessObjects с указанием глубины работает. Ранее пользовался без параметров, по причине того что думал что по дефолту уровень вложенности не ограничен. Не очень прозрачно получается =)
Спасибо еще раз за помощь!
Re: Регистрация Nullable-типов в DataStore
Добавлено: 24 май 2013, 08:50
HighAley
Здравствуте.
Структура бизнес-объектов зачастую является очень сложной, поэтому мы принудительно ограничиваем вложенность, чтобы ускорить работу и избежать проблем с переполнением памяти.
Обращайтесь, если ещё возникнут вопросы.
Спасибо.