Коллекции строк в настройках не меняют свой размер

У меня есть несколько коллекций строк в моем проекте C#, которые хранятся в настройках. В начале этого проекта я инициализировал эти коллекции, чтобы они содержали 20 значений, все из которых были 0. В последнее время я понял, что на самом деле мне нужно около 100 единиц в каждой коллекции, поэтому я добавил еще 80 к каждой коллекции. Это работает нормально, но теперь я вижу странные вещи.

Я получал исключение из ограниченного диапазона, и когда я последовал за ним, я попытался получить доступ к элементу с индексом 20 в одной из моих коллекций строк. Хм. Этого не должно быть, поэтому я проверяю мой stringCollection, который, по-видимому, слишком мал, чтобы обрабатывать индекс 20, и, конечно же, все 100 моих нулей все еще там. Итак, в точке останова я наведите курсор на мою коллекцию строк, и он говорит .count = 20. ЧТО? Я буквально вижу 100 0 здесь в файле settings.settings. Я посчитал хорошо?

Итак, я пошел и удалил эту коллекцию строк, создал новую с тем же именем и тем же содержимым, и все в порядке. Но я не хочу идти и переделывать это для КАЖДОГО набора строк, который есть в моих настройках.

Кто-нибудь сталкивался с этим? Это ошибка? Почему, если я удаляю коллекцию, а затем переделываю ее, она вдруг работает?

РЕДАКТИРОВАТЬ: мой конфигурационный файл

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
    <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
        <section name="OPCServer_Simulator.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
    </sectionGroup>
</configSections>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/></startup><userSettings>
        <OPCServer_Simulator.Properties.Settings>
            <setting name="portName" serializeAs="String">
                <value>COM1</value>
            </setting>
            <setting name="numItems" serializeAs="String">
                <value>0</value>
            </setting>
            <setting name="recipeCode" serializeAs="Xml">
                <value>
                    <ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                        xmlns:xsd="http://www.w3.org/2001/XMLSchema">
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                    </ArrayOfString>
                </value>
            </setting>
            <setting name="nomThick" serializeAs="Xml">
                <value>
                    <ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                        xmlns:xsd="http://www.w3.org/2001/XMLSchema">
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                    </ArrayOfString>
                </value>
            </setting>
            <setting name="nomWidth" serializeAs="Xml">
                <value>
                    <ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                        xmlns:xsd="http://www.w3.org/2001/XMLSchema">
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                    </ArrayOfString>
                </value>
            </setting>
            <setting name="meas9" serializeAs="Xml">
                <value>
                    <ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                        xmlns:xsd="http://www.w3.org/2001/XMLSchema">
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                        <string>0</string>
                    </ArrayOfString>
                </value>
            </setting> //you get the idea
        </OPCServer_Simulator.Properties.Settings>
    </userSettings>
</configuration>

РЕДАКТИРОВАТЬ 2: мой цикл, он вызывает проблемы

for (int k = 0; k <= 99; k++)
            {
                for (int i = 1; i <= 20; i++) //adding the specified number of items to OPC server
                {
                    var value = Properties.Settings.Default["meas" + i] as System.Collections.Specialized.StringCollection;
                    value[k] = "0";
                }
                var dataSet = Properties.Settings.Default["dateTime"] as System.Collections.Specialized.StringCollection;
                dataSet[k] = " ";
                dataSet = Properties.Settings.Default["recipeCode"] as System.Collections.Specialized.StringCollection;
                dataSet[k] = "0";
                dataSet = Properties.Settings.Default["nomWidth"] as System.Collections.Specialized.StringCollection;
                dataSet[k] = "0";
                dataSet = Properties.Settings.Default["nomThick"] as System.Collections.Specialized.StringCollection;
                dataSet[k] = "0";
            }

0 ответов

Другие вопросы по тегам