Ошибка настройки приложения после изменения целевой структуры проекта

В моем приложении я использую пользовательские настройки, как описано здесь. Затем я понял, что в VS 2010 я использовал .NET 4.0, в то время как только .NET 2.0 был достаточным.

Когда я изменил структуру и построил проект, в моем коде всякий раз, когда я получаю доступ к настройке сейчас, я получаю следующую ошибку:

Произошла ошибка при создании обработчик раздела конфигурации для UserSettings/Vegi_Manager.Properties.Settings: Не удалось загрузить файл или сборку 'System, Version = 4.0.0.0, Culture = нейтрально, PublicKeyToken = b77a5c561934e089 'или одной из его зависимостей. Система не может найти указанный файл. (C:\Users\Акшай\AppData\Local\Microsoft\Вега-Manager.vshost.exe_Url_44035dlkzpfaaauiqsd4nh3f0l0yq0tv\1.0.0.0\user.config строка 5)

Это по неизвестным причинам, использующим версию 4.0. Пожалуйста, предложите, что мне делать.

Ответ 1

Проверьте свой app.config, возможно, у вас все еще есть System.Configuration.UserSettingsGroup, или что-то вроде этой версии 4 все еще скрывается, вам придется вручную отредактировать и получить соответствующее значение для версии 2

Ответ 2

У меня возникла такая же проблема, когда я начал разрабатывать надстройку Outlook в Visual Studio 2010, ориентированную на платформу .NET 4.0, а затем решил изменить ее на 3.5. Похоже, Visual Studio не была достаточно умна, чтобы обновить файл app.config, который все еще имел ссылку на 4.0.

Как и предполагали предыдущие плакаты (я буду немного более конкретным), вручную отредактировав app.config, чтобы изменить все ссылки с "Version = 4.0.0.0" на "Version = 2.0.0.0" (по-видимому .NET 3.5 по-прежнему использует 2.0.0.0) в элементе <sectionGroup> и его дочерних элементах, я смог снова настроить параметры в моем случае.

Ответ 3

Скорее всего, у вас есть ссылка на сборку .NET 4 в вашем решении - если вы откроете окно "Добавить ссылку" в своем решении и сделаете окно немного шире, вы увидите, что есть столбцы для Версии и Runtime... когда вы создали свои решения для целевой .NET 4, возможно, вы добавили ссылку на сборку, для которой требуется среда .NET 4, и теперь вы изменили ее на .NET 2, вам нужно поменять ее на сборку что требуется только для среды выполнения .NET 2.

Конечно, если вы использовали что-то из сборки .NET 4, которая не существовала в .NET 2, вам придется либо перезаписать, чтобы не использовать ее, либо передумать, а сделать это в .NET 4 вместо этого!

Ответ 4

Могу ли я добавить здесь, что вам нужно изменить данные/ссылки app.config на предыдущую платформу .NET(в данном случае 4.0.0.0) на новую версию .NET с поддержкой системы (в этом случае 2.0.0.0, которая то же самое для .NET 3.5!)

Ответ 5

если вы откроете свой app.config, убедитесь, что все разделы конфигурации настроены на .net framework 2 not 4

если вы разместите свой app.config для меня, я могу помочь больше