首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >web.config和app.config混淆

web.config和app.config混淆
EN

Stack Overflow用户
提问于 2009-10-01 10:56:18
回答 2查看 4.1K关注 0票数 5

我有一个引用web服务的DLL。

它放入app.config的代码块是(我已经更改了名称,但您会明白的):

代码语言:javascript
复制
<applicationSettings>
    <DLLName.My.MySettings>
        <setting name="DLLName_WebReferenceName_ASMXName"
            serializeAs="String">
            <value>http://URL/Filename.asmx</value>
        </setting>
    </DLLName.My.MySettings>
</applicationSettings>

我的网站引用了这个DLL。

问题是,我应该向web.config添加什么来覆盖上面的设置(或者,我是否只将app.config放在BIN目录中)?

我需要能够覆盖生产服务器上we服务的URL,因为它不能到达app.config中指定的URL (这是一个不同的问题,我们不会深入讨论)。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-10-01 11:08:01

在configSections中创建一个名为applicationSettings的新sectionGroup,并将您的app.config配置粘贴到web.config中,如下所示,然后您可以覆盖您的app.config设置。

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <configSections>
        <sectionGroup name="applicationSettings" 
                type="System.Configuration.ApplicationSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
            <section name="Playground.ConfigurationOverride.DataAccess.Properties.Settings" 
                    type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
                    requirePermission="false" />
        </sectionGroup>
    </configSections>
    <applicationSettings>
        <Playground.ConfigurationOverride.DataAccess.Properties.Settings>
            <setting name="MySetting" serializeAs="String">
                <value>Setting in DataAccess</value>
            </setting>
        </Playground.ConfigurationOverride.DataAccess.Properties.Settings>
    </applicationSettings>
</configuration>
票数 8
EN

Stack Overflow用户

发布于 2018-09-10 15:19:10

Asp.Net配置文件之间的差异:

Web.config:

当您希望在IIS上承载应用程序时,需要使用Web.config。Web.config是IIS的一个强制配置文件,用于配置它在Kestrel面前作为反向代理的行为。如果您想要在IIS上托管web.config,则必须维护它。

AppSetting.json:

对于其他与IIS无关的内容,您可以使用AppSetting.json。AppSetting.json用于Asp.Net核心托管。ASP.NET核心使用"ASPNETCORE_ENVIRONMENT“环境变量来确定当前环境。默认情况下,如果您运行应用程序时没有设置此值,它将自动默认为生产环境,并使用"AppSetting.production.json“文件。当您通过Visual Studio进行调试时,它会将环境设置为“开发”,因此它使用"AppSetting.json“。请访问该网站以了解如何在Windows上设置主机环境变量。

App.config:

App.config是.NET使用的另一个配置文件,主要用于Windows Forms、Windows Services、控制台应用程序和WPF应用程序。当您通过控制台应用程序启动Asp.Net核心托管时,也会使用app.config。

太长了;没读过

配置文件的选择取决于您为服务选择的宿主环境。如果使用IIS承载服务,请使用Web.config文件。如果您正在使用任何其他托管环境,请使用App.config文件。请参阅Configuring Services Using Configuration Files documentation和查看Configuration in ASP.NET Core.

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1503247

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档