在应用程序设置上调用Upgrade()时出现ArgumentNullException

时间:2013-01-23 08:58:35

标签: c# .net-3.5 application-settings

我有一个使用用户范围设置的Windows服务,并在服务启动期间使用以下代码加载它们:

Properties.Settings.Default.Reload();
if (Properties.Settings.Default.UpgradeRequired)
{
  Properties.Settings.Default.Upgrade();
  Properties.Settings.Default.UpgradeRequired = false;
}

在一台生产计算机上,无法启动服务,我从ArgumentNullException方法获得Reload(),其中包含以下堆栈跟踪:

System.ArgumentNullException: Value cannot be null.
Parameter name: path
  at System.IO.Directory.GetParent(String path)
  at System.Configuration.LocalFileSettingsProvider.GetPreviousConfigFileName(Boolean isRoaming)
  at System.Configuration.LocalFileSettingsProvider.Upgrade(SettingsContext context, SettingsPropertyCollection properties, Boolean isRoaming)
  at System.Configuration.LocalFileSettingsProvider.Upgrade(SettingsContext context, SettingsPropertyCollection properties)
  at System.Configuration.ApplicationSettingsBase.Upgrade()

没有记录Upgrade()方法可能抛出ArgumentNullException。有没有人知道这意味着什么和/或如何在不重建服务的情况下解决它?

0 个答案:

没有答案