Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Последние темы форума

Показать новые сообщения »

Почтовая рассылка

Подписчиков: 6311
Последний выпуск: 19.06.2015

Реализовать тип или коллекцию на основе имеющихся данных.

38K
23 августа 2013 года
Telsystems
20 / / 13.11.2012
Добрый день.

Нужно реализовать тип или коллекцию на основе имеющихся данных.

Например:

Мне приходить список полей в виде XML из которых нужно сделать определенный контрол, в данном случае ComboBox.

Но у этих полей есть справочники, которые приходят отдельно и их надо как-то сопоставить и сохранить.

Примеры методов и словарей к ним ниже:

Метод:


 
Код:
<Method Name="Города справочник" type="ComboDictionary" DictionaryId="3" FilterField="@keyCodeForCities">
        <values>
            <pair dic="ID" QF="@ID"/>
            <pair dic="Name" QF="Город"/>
        </values>
    </Method>

Словарь:


 
Код:
<NewDataSet>
        <City>
            <ID>17</ID>
            <Name>г.Александровск Артемовский</Name>
        </City>
        <City>
            <ID>18</ID>
            <Name>г.Луганск Артемовский</Name>
        </City>
    </NewDataSet>
Метод :


 
Код:
<Method Name="Улица справочник" type="ComboDictionary" DictionaryId="3" FilterField="@keyCodeForStreets">
            <values>
                <pair dic="ID" QF="@ID"/>
                <pair dic="CityID" QF="@CityId"/>
                <pair dic="Name" QF="Улица"/>
            </values>    
        </Method>

Словарь:


Код:
<NewDataSet>
            <City>
                <ID>1</ID>
                <CityID></CityID>
                <Name>Коцюбинского ул.</Name>
            </City>
            <City>
                <ID>2</ID>
                <CityID></CityID>
                <Name>Героев ВОВ пл.</Name>
            </City>
        </NewDataSet>

Метод:


 
Код:
<Method Name="NewComboDictionary1" type="ComboDictionary" ReadOnly="true" DictionaryId="1125"  FilterField="@aaaaa">
    <values>
        <pair dic="Kagent" QF="Выбор службы"/>
        <pair dic="Id" QF="Код службы"/>
    </values>
</Method>

Словарь:


 
Код:
<NewDataSet>
            <row Id="31" Kagent="ДКПП ОАО &quot;КРАЯН&quot;"/>
            <row Id="50" Kagent="ОАО &quot;ОДЕССАГАЗ&quot;"/>
            <row Id="107" Kagent="ОСМД &quot;ПИОНЕР&quot;"/>
            <row Id="6010" Kagent="КП ЖКС &quot;СЕВЕРНЫЙ&quot;"/>
            <row Id="6020" Kagent="КП ЖКС &quot;ПЕРЕСЫПСКИЙ&quot;"/>
        </NewDataSet>
Класс в котором я сохраняю данные полей методов :


Код:
public class OrganizationMethod
        {
            public string Name { get; set; }
            public string Type { get; set; }

            public readonly List<MethodValues> values = new List<MethodValues>();

            public string FieldName   { get; set; }
            public int DictionaryId   { get; set; }

            private string _filterField = string.Empty;

            public string FilterField
            {
                get { return _filterField; }
                set { _filterField = value; }
            }

            public string AddParams   { get; set; }
            public string Delimiter   { get; set; }

            public class MethodValues
            {
                public string Name { get; set; }

                public readonly Dictionary<string, string> value =
                       new Dictionary<string, string>();
            }  
        }

Вопрос:

Как можно реализовать сохранения словарей, на основе элементов в методах учитывая, что элементов может быть разное количество ?

Спасибо.
85K
30 августа 2013 года
Алексей Иевенко
16 / / 06.08.2013
Извините, но вы так не сохраняете свои данные... Они у вас уже сохранены в XML-файлах... В коде вы их не сохраняете, а реализуете определенную обработку своих данных... Чтобы сохранить тип (класс) без изменений и без трудностей считывания и записи примените сериализацию для своего типа... При этом сериализовать данные вы можете и в XML-файл...

Знаете кого-то, кто может ответить? Поделитесь с ним ссылкой.

Ваш ответ

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог