Я хочу получить доступ к разделу "appSettings" файла web.config. Согласно MSDN и нескольким другим источникам, следующее должно работать:
System.Configuration.Configuration config =
WebConfigurationManager.OpenWebConfiguration("/rootPath");
Я получил эту ошибку во второй конфигурации (System.Configuration. Конфигурация):
Тип или имя пространства имен "Конфигурация" не существует в namespace 'System.Configuration' (есть вам не хватает ссылки на сборку?)
Я получил дополнительную ошибку в системе ( Система. Конфигурация. Конфигурация):
Тип 'System.Configuration.Configuration' определяется в сборке, которая не является ссылки. Вы должны добавить ссылку к сборке 'System.Configuration, Версия = 2.0.0.0, Культура = Нейтральная, PublicKeyToken = b03f5f7f11d50a3a".
Обращаясь к первой ошибке, у меня есть ссылка на System.Configuration. Когда я смотрю в "Обозреватель объектов", он содержит определение класса для "Конфигурация".
Адресация второй ошибки, ссылка предназначена для версии 2.0.50727. Есть версия 2.0.0.0?
Вторая ошибка появилась после удаления и снова добавлена ссылка на System.Configuration. Кроме того, после повторного добавления ссылки он теперь отображается как "System. c onfiguration" в моих ссылках. Обратите внимание на строчку c.
Дополнительные примечания
Вещи, которые я пробовал и не удалось:
Я создал тестовое решение и не имел проблем с доступом к классу в пространстве имен System.Configuration.
Любые идеи о том, что происходит (как я это сделал)? Какие возможности я могу исправить?
Это так глупо, я хочу удалить этот вопрос и спокойно отступить. Возможно, это будет полезно для другого дурака. Эйлон был на правильном пути, я добавлял ссылку на неправильный проект.
Я был во времена хруста, пытаясь получить готовое проектное производство и не очень сфокусировался (пытаясь сделать сразу несколько вещей). Хорошо, я все еще новичок в этом и надеюсь, что в следующий раз я сделаю глубокий вдох, а не напряжусь... и начните проект со строк подключения, хранящихся в веб-конфигурации.
Попробуйте удалить эти ссылки на System.Configuration
и сделайте это с нуля: добавьте version=2.0.0.0
(для runtime версия v2.0.50727). Затем, чтобы прочитать ваш appSetting
, вы могли бы просто написать это:
string value = System.Configuration.ConfigurationManager.AppSettings["yourKey"];