Добавить параметр в app.config или будет достаточно добавить параметр в * .exe.config? - PullRequest
0 голосов
/ 19 ноября 2018

Недавняя статья: https://blogs.msdn.microsoft.com/dotnet/2017/04/05/announcing-the-net-framework-4-7/ объявляет о возможном решении проблем с поддержкой сенсорного экрана. Когда я читаю документ, нужно только изменить файл app.config. Смотрите строчку:

"Вы можете включить новую сенсорную реализацию с помощью следующей записи app.config.

    <runtime>
            <AppContextSwitchOverrides value="Switch.System.Windows.Input.Stylus.EnablePointerSupport=true"/>

</runtime>

в разделе:

Поддержка WPF Touch / Stylus для Windows 10

Мой вопрос таков: могу ли я внести изменения в Myapp.exe.config или я должен сделать это в app.config? Возможно, вопрос может быть следующим: информация app.config используется во время компиляции или просто переведена в myapp.exe.config?

Далее, я хотел бы знать, можно ли уйти:

<startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/>
  </startup>

В документации просто упоминается добавление EnablePointerSupport и не упоминается об изменении версии в файле конфигурации. Я действительно скачал и установил .NET Framework 4.7, но не изменил версию в файле конфигурации. Мне нужно?

Спасибо.

1 Ответ

0 голосов
/ 27 ноября 2018

Могу ли я просто внести изменения в Myapp.exe.config или я должен сделать это в app.config?

Если ваш EXE-файл развернут, вы можете изменить App.Exe.Config, перезапустить приложение и использовать новые настройки конфигурации. Если вы сделаете это для приложения ASP.Net (т. Е. Измените web.config), это приведет к перезапуску пула приложений в IIS и использованию новых настроек web.config.

Очевидно, что добавьте любые изменения в фактический файл App.Config, чтобы в следующий раз вы автоматически компилировали его, добавленный в выходной файл App.Exe.Config.

У вас появятся еще несколько вопросов по этому поводу, и все они задокументированы здесь. Прочтите это, хорошо прочитав:

https://docs.microsoft.com/en-us/dotnet/framework/migration-guide/how-to-configure-an-app-to-support-net-framework-4-or-4-5


В документации просто упоминается добавление EnablePointerSupport и не упоминается об изменении версии в файле конфигурации. Я действительно скачал и установил .NET Framework 4.7, но не изменил версию в файле конфигурации. Мне нужно?

Если вы не используете особые функции .Net 4.7, вы можете оставить версию как .Net 4.5.

<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/>

В этом случае в статье конкретно указывается исправление ошибки в .Net 4.7. Так что вам нужно будет использовать 4.7.

Чтобы изменить это, вы редактируете свойства вкладки Build проекта (или вручную в файле конфигурации).

<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7"/>

Вот ссылка на .Net Frameworks против SKU: https://docs.microsoft.com/en-us/dotnet/framework/configure-apps/file-schema/startup/supportedruntime-element


Если app.config используется во время компиляции для чего-либо кроме создания файла Myapp.exe.config.

  • Вы правы, он используется во время компиляции для генерации App.Exe.Config.

  • Многие люди хранят настройки конфигурации в конфигурационных файлах, поэтому App.Exe.Config можно редактировать также во время выполнения. В конце концов, это просто файл XML.

  • Также обратите внимание, что вы можете иметь Transforms в вашем App.Configs для различных сред во время разработки:

enter image description here

...