Реестр является остановкой. Вы не уверены, имеет ли пользователь, который использует Ваше приложение, достаточные права записать в реестр.
можно использовать app.config
файл для сохранения настроек прикладного уровня (которые являются тем же для каждого пользователя, который использует приложение).
я сохранил бы определенные для пользователя настройки в XML-файле, который будет сохранен в Изолированное устройство хранения данных или в SpecialFolder. Каталог ApplicationData.
Рядом с этим, как от.NET 2.0, возможно сохранить значения назад к app.config
файл.
Внутренне SQL Server суммирует значения (для последующего деления на счетчик) и сохраняет их в типе данных столбцов - в данном случае int - которого недостаточно для хранения суммы. - если вы сначала передадите значение как bigint, оно будет суммировать значения, также сохраняя эти значения в bigint - что, вероятно, достаточно велико, тогда можно будет продолжить вычисление среднего.
select avg(cast(number as bigint)) from LargeNumbers
Вам нужно будет преобразовать число к чему-то большему, чем int, скажем, к большому целому числу, потому что для вычисления среднего SQL все значения суммируются как int, и здесь вы переполняетесь.