首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在web.config的不同部分引用appSetting

在Web.config文件中,可以在不同的部分引用appSettings。以下是一个完整的示例,演示了如何在Web.config的不同部分引用appSettings:

代码语言:xml
复制
<?xml version="1.0" encoding="utf-8"?><configuration>
  <appSettings>
    <add key="setting1" value="value1"/>
    <add key="setting2" value="value2"/>
    <add key="setting3" value="value3"/>
  </appSettings>

 <system.web>
    <compilation debug="true" targetFramework="4.5.2">
     <buildProviders>
        <add extension=".cshtml" type="System.Web.WebPages.Razor.RazorBuildProvider, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
      </buildProviders>
    </compilation>

    <httpRuntime targetFramework="4.5.2"/>

   <pages>
     <namespaces>
        <add namespace="System.Web.Helpers"/>
        <add namespace="System.Web.Mvc"/>
        <add namespace="System.Web.Mvc.Ajax"/>
        <add namespace="System.Web.Mvc.Html"/>
        <add namespace="System.Web.Optimization"/>
        <add namespace="System.Web.Routing"/>
        <add namespace="System.Web.WebPages"/>
      </namespaces>
    </pages>

   <authentication mode="Forms">
     <forms loginUrl="~/Account/Login" timeout="2880"/>
    </authentication>

   <profile defaultProvider="DefaultProfileProvider">
      <providers>
        <add name="DefaultProfileProvider" type="System.Web.Providers.DefaultProfileProvider, System.Web.Providers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" applicationName="/"/>
      </providers>
    </profile>

    <membership defaultProvider="DefaultMembershipProvider">
      <providers>
        <add name="DefaultMembershipProvider" type="System.Web.Providers.DefaultMembershipProvider, System.Web.Providers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/"/>
      </providers>
    </membership>

    <roleManager defaultProvider="DefaultRoleProvider">
      <providers>
        <add name="DefaultRoleProvider" type="System.Web.Providers.DefaultRoleProvider, System.Web.Providers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" applicationName="/"/>
      </providers>
    </roleManager>

   <sessionState mode="InProc" customProvider="DefaultSessionProvider">
      <providers>
        <add name="DefaultSessionProvider" type="System.Web.Providers.DefaultSessionStateProvider, System.Web.Providers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection"/>
      </providers>
    </sessionState>
  </system.web>

 <system.webServer>
   <validation validateIntegratedModeConfiguration="false"/>
    <handlers>
     <remove name="ExtensionlessUrlHandler-ISAPI-4.0_32bit"/>
     <remove name="ExtensionlessUrlHandler-ISAPI-4.0_64bit"/>
     <remove name="ExtensionlessUrlHandler-Integrated-4.0"/>
      <add name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0"/>
      <add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0"/>
      <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0"/>
    </handlers>
   <modules>
     <remove name="FormsAuthenticationModule"/>
      <add name="FormsAuthentication" type="System.Web.Security.FormsAuthenticationModule" preCondition=""/>
     <remove name="UrlRoutingModule-4.0"/>
      <add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule" preCondition=""/>
    </modules>
  </system.webServer>

 <runtime>
   <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
     <dependentAssembly>
       <assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35"/>
       <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0"/>
      </dependentAssembly>
     <dependentAssembly>
       <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35"/>
       <bindingRedirect oldVersion="1.0.0.0-5.2.3.0" newVersion="5.2.3.0"/>
      </dependentAssembly>
     <dependentAssembly>
       <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35"/>
       <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0"/>
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
</configuration>

在上面的示例中,我们可以看到在不同的部分引用了appSettings。例如,在system.web部分中,我们可以看到引用了appSettings中的setting1和setting2:

代码语言:xml<authentication mode="Forms">
复制
 <forms loginUrl="~/Account/Login" timeout="2880"/>
</authentication>

在上面的代码中,我们可以看到使用了appSettings中的setting1作为loginUrl的值。同样,在system.webServer部分中,我们可以看到引用了appSettings中的setting2作为responseBufferLimit的值:

代码语言:xml
复制
<handlers>
  <add name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0"/>
  <add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0"/>
  <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0"/>
</handlers>

在上面的代码中,我们可以看到使用了appSettings中的setting2作为responseBufferLimit的值。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Web.Config文件中使用configSource

我们都知道,在asp.net中修改了配置文件web.config后,会导致应用程序重启,所有会话(session)丢失。...然而,应用程序配置信息放在配置文件里是最佳选择,在后台修改了配置后导致所有会话丢失是非常不爽事情,这个时候可将配置文件中经常需要改变参数配置节放到外面来,例如appSetting节。  ...,当然还需要添加引用System.Configuration; namespace ConsoleApplication1 { class Program { static...使用 configSource 属性时,对 Web.config 文件有一次写入操作。这会导致应用程序重新启动,但是随后对该节更新会直接写入单独文件,而不会导致后面的应用程序重新启动。...只能包含一次configSource; 在网站运行时,如果修改 Web.Config 文件会引起站点重启,而修改 My.Config 文件则不会,同时也提高了配置文件可读性 注意,configSouce

67820

添加config文件_config配置文件

Web.config web.config继承成于machine.config文件,同时我们可以 对特定web.application文件单独进行设置。...通常我们会在此处申明我们需要设置节点,并在后面对节点中详细值,或者属性进行设置。 appSetting: 特定应用程序配置。此处能方便帮助我们对应用程序指定一些简单,基本设置。...对于不同状态异常,我们可以指定对于提示页面。 sessionState: 会话配置 Inproc 进程内存储,StateServer 第三方状态服务器存储,SqlServer 数据库存储。...在不同场景或者需求下, 我们可以指定如何存储我们会话状态。...,或者自定义Module,防止盗链, IP安全管理等 HttpHandler: Handler自定义设置,或者添加自定义Handler ApplicationHost.config IIS为我们提供了一个高度集成

1.7K30

.Net4.0 Web.config 配置实践

Json字符串超出最大长度限制 控件早期版本呈现方式 C# 操作 Web.config 小结 关于 Web.config 当通过.NET 新建一个Web应用程序项目后,默认情况下会在根目录自动创建一个默认...除根目录外,可以每个要特殊配置子目录下新建一个Web.config文件。它可以在继承父目录配置信息以外,可以自定义重写或修改父目录中定义设置。...Request.Path 值错误 (即包含一些被认为是危险字符输入,脚本标记等),如果我们有需要关闭此功能时,可以在应用页面头部加入如下配置: <%@ Page Language="C#" ValidateRequest..., 2024-04-22日期格式,我们会发现从数据库提取日期格式未必预期那样,即使配置了数据库格式及WINDOWS环境日期格式,仍然不能按照预期显示,那么我们可以尝试在 Web.config <..."; XmlDocument xd=new XmlDocument(); xd.Load(path); //如果没有appSetting,则添加 if(xd.SelectNodes

6710

App.config和Web.config配置文件自定义配置节点

在asp.net应用程序运行过程中,如果web.config文件发生更改就会导致相应应用程序重新启动,这时存储在服务器内存中用户会话信息就会丢失(存储在内存中Session)。   ...在asp.net应用程序运行过程中,如果web.config文件发生更改就会导致相应应用程序重新启动,这时存储在服务器内存中用户会话信息就会丢失(存储在内存中Session)。...一些软件(杀毒软件)每次完成对web.config访问时就会修改web.config访问时间属性,也会导致asp.net应用程序重启。...自定义节点配置解析  经过查阅资料发现,有些人和我一样,只用过我上面说两个节点,但是如果参数过多,这种做法缺点也会明显地暴露出来:appSetting配置参数项只能按key名来访问,不能支持复杂层次节点也不支持强类型...解决方法便是使用自定义节点配置来解析。 我们来看一下如何在app.config或者web.config中增加一个自定义配置节点。 在这篇博客中,我将介绍4种自定义配置节点方式。

1.6K10

Asp.Net 之 Web.config 配置文件详解

在asp.net应用程序运行过程中,如果web.config文件发生更改就会导致相应应用程序重新启动,这时存储在服务器内存中用户会话信息就会丢失(存储在内存中Session)。...一些软件(杀毒软件)每次完成对web.config访问时就会修改web.config访问时间属性,也会导致asp.net应用程序重启。...web.config节点功能。...需要注意是,在利用了某些版本控制软件之后(Microsoft Visual SourceSafe),版本控制软件可能会将web.config设置为只读属性,就会出现不能设置情况,我们需要手动将web.config...clear:移除对继承节和节组所有引用,只允许由当前 section 和 sectionGroup 元素添加节和节组。 remove:移除对继承节和节组引用

5.6K10

.NET平台系列25:从 ASP.NET 迁移到 ASP.NET Core 技术指南

下面是一些显著更改: 无需显式添加,即可将文件视作项目的一部分。 服务于大型团队时,这可减少出现 XML 合并冲突风险。...或者,您可以通过添加appSetting来关闭此功能owin:AutomaticAppStartup with 值“false”。...常见做法是将所有的自定义键值对存储在 Web.config 文件 部分中: <add key="UserName" value="User"...部分应用迁移   部分应用迁移一种方法是创建 IIS 子应用程序,只将特定路由从 ASP.NET 4.x 迁移到 ASP.NET Core,同时保留应用 URL 结构。...在 ASP.NET Core 中,输入格式化程序工作方式有所不同。 与输入格式化程序一起用于分析 JSON 或 XML 时,[Bind] 属性不再专用于防止过多发布。

2.1K20

App.config和Web.config配置文件自定义配置节点

在asp.net应用程序运行过程中,如果web.config文件发生更改就会导致相应应用程序重新启动,这时存储在服务器内存中用户会话信息就会丢失(存储在内存中Session)。   ...在asp.net应用程序运行过程中,如果web.config文件发生更改就会导致相应应用程序重新启动,这时存储在服务器内存中用户会话信息就会丢失(存储在内存中Session)。...一些软件(杀毒软件)每次完成对web.config访问时就会修改web.config访问时间属性,也会导致asp.net应用程序重启。...自定义节点配置解析  经过查阅资料发现,有些人和我一样,只用过我上面说两个节点,但是如果参数过多,这种做法缺点也会明显地暴露出来:appSetting配置参数项只能按key名来访问,不能支持复杂层次节点也不支持强类型...解决方法便是使用自定义节点配置来解析。 我们来看一下如何在app.config或者web.config中增加一个自定义配置节点。 在这篇博客中,我将介绍4种自定义配置节点方式。

95030

推荐一个工具包自定义HTTP 404错误

ASP.NET 网站,Web.config 文件将包含组织到不同部分某些核心设置。 Errorpage.aspx 这是自定义错误页将替换在泛型 404 错误页。...您还会在安装目录中找到三个子目录: App _ Code、 Bin 和 Web 引用。 设置 Web 服务器 首先,必须将复制所需文件到您 Web 服务器根目录如果选择不安装它们。...此外将复制三个子目录: App _ Code、 Bin 和 Web 引用。 Web 服务器根目录中复制这些可能已经存在三个子目录时应注意。...appSettings 部分设置是工具包,唯一因此您可以复制和粘贴直接到同一个节在 Web.config 文件中这些字符串。...该文件是已完全配置所以不需要执行以下。 可以更改某些错误响应页,"很抱歉,找不到所请求页"和"下查看接近于您请求结果"中为您自己选择文本字符串。

1.4K50

解锁环境变量在云原生应用中各种姿势

应用程序在某些时刻总是需要一些外挂配置,云原生应用实践是在容器化之前就将应用程序配置保留在代码之外。...“12-Factors App:Store config in the environment ① 外挂配置文件:业务配置 appsettings.json “ 可以在代码中要求加载appsetting.serect.json...“IIS配置会落地到web.config 文件 Docker 环境变量 Docker-Compose有多重方式为容器设置环境变量,按照优先级如下: 在environment配置节写入 通过shell传入环境变量...从env_file配置节加载环境变量文件 “① 文件中环境变量并不会自动应用到容器,需要在Compose yml文件中以${}引用 ② docker-compose命令默认从命令执行同一目录寻找...下面的例子:shell传递环境变量值覆盖了.env文件同名环境变量。

1.6K30

.Net Core Api网关Ocelot开箱即用版本

这里[Hei.Ocelot.ApiGateway] 就把这件事给做了,以后有同学要用的话可以单独拉下代码来部署,或者docker/k8s直接部署就好了(这是我计划,后续怎么做可能要看我自己需求,我们公司内部部分项目也用...网关; Hei.Api 是网关测试用Api; Hei.IdentityServer 是测试用IdentityServer,给部分自己没准备好IdentityServer同学体验; 裸机(Host...我们实现是前者; 开启配置 appsetting.yml加上以下配置即可启用: Administration: Path: /administration #这里是admin api目录 IdentityServer...: 下面,那Consul和eureka和k8s是互斥,都有配置的话优先级consul>eureka>k8s 总结 我大概看着自己需求实现了部分需要单独引用拓展包才能启用功能,但是还有部分功能未有实现...,比如Caching、Tracing这些(大家可以修改测好后直接提pr,我不是懒得写而是测试麻烦,懒哈哈) 同样,不需要引用包,单独配置就可以启用功能,都一一保留着,比如 限流 服务熔断降级 求求合并

81820

何在ASP.NetCore增加文件上传大小

/ 如何在核心中增加文件 ASP.NET 大小 / 从ASP.NET 2.0开始最大请求正文大小限制为30MB (+28.6 MiB)。在正常情况下,无需增加 HTTP 请求 body 大小。...但是,当您尝试上传大型文件 (> 30MB) 时,需要增加默认允许最大限制。在这篇简短文章中,我们将了解如何在.netcore 应用程序中增加文件 ASP.NET 大小以及控制此限制各种选项。...Kestrel 可用作独立服务器或被其他服务器反向代理, IIS、Nginx 或 Apache。没有单一解决方案可以覆盖所有的部署选项来增加请求大小限制。根据不同部署选项,解决方案也不尽相同。...有 3 种不同方法可以增加这个默认限制。 3.1 MVC 解决方案 如果你想改动一个特定 MVC 接口或控制器最大请求体大小限制,你可以使用属性。...原因是,这个设置对于运行在 IIS 后面的 Kestrel 来说是无效,在 IIS 后面应用是正常 web.config 限制。

4.8K10

.Net Core 学习之路-基础

我们可以通过配置环境变量启用或禁用应用程序部分功能 在Startup.cs Configure函数中可通过IHostingEnvironment来获取当前环境变量配置 配置项读写 WebHost.CreateDefaultBuilder...{Environment}.json中设定值 用户机密 按照我们以往习惯,可能习惯于将之前存在web.config配置项转移到 appsettings.json 中存储,但是对于数据库连接字符串等加密信息如今...这种做法好处总结为下两点: 将机密文件与项目源代码分离,提高安全性 以连接字符串为例,如果多人开发情况,每个人可能用到链接不同,避免多人都在更改同一个配置文件,上传时还要还原繁琐 下面介绍下机密管理器使用方式...core中用法: 引用最新版nuget包 增加配置文件log4net.config 使用代码如下: log4net.Repository.ILoggerRepository repository...值得注意是通过构造函数注入logger对象会优先选择appsettings.json中配置 更要注意appsetting是配置环境变量所对应appsettings.

1K40

HttpReports 2.0 发布了 !!!

,只需要Web项目引用 Nuget包安装即可,非常方便。..., HttpReports.PostgreSQL) 引用完成后,简单配置一下, 修改项目的 appsetting.json 文件 { "HttpReportsDashboard": {...引用HttpReports 我新建一个WebAPI 项目 UserService ,来充当用户服务,然后安装 HttpReports,当然你可以在你项目中直接使用 Nuget 引用 HttpReports...配置IP和端口 Server HttpReports 需要显式指定Web程序IP和端口,当然这个地址用外网和内网都可以,在微服务环境中, 一个服务会开启多个实例, HttpReports 通过IP和端口来区分不同程序实例...在appsetting.json 中配置 我们直接在 appsetting.json 中设置 Urls 属性,你可以设置 "Server": "http://127.0.0.1:3000" 在命令行参数中配置

42920

关于c# SESSION丢失问题解决办法

1、在WEB.CONFIG文件中修改SESSION状态保存模式,:<sessionState mode='StateServer' stateConnectionString='tcpip=127.0.0.1...3、如果SESSION中保存<em>的</em>数据类型是自定义<em>的</em>,<em>如</em>结构,请在自定义数据类型处序列化会话状态,即在类或结构申明前加[Serializable] 完成以上3部,状态即可保存,但是在访问页面是浏览器显示<em>的</em>路径中增加了一段字符...它使用基于字典<em>的</em>、内存中<em>的</em>对象<em>引用</em>(这些对象<em>引用</em>存在于 IIS 进程中)缓存来完成该操作。...StateService服务<em>的</em>电脑IP,这样就可以实现位于<em>不同</em>电脑上<em>的</em>Asp.net程序互通Session了。...在使用StateServer或者SQLServer存储Session时,所有需要保存到Session<em>的</em>对象除了基本数据类型(默认<em>的</em>数据类型,<em>如</em>int、string等)外,都必须序列化。

1.8K50

DotNet程序配置文件

在实际项目开发中,对于项目的相关信息配置较多,在.NET项目中,我们较多将程序相关配置直接存储.config文件中,例如web.config和app.config。   ....NET中配置文件分为两部分:配置实际内容(位于appSetting节点);指定了节点处理程序(位于configSections节点)。   ...,如果测试过就会发现本地.config文件中没有对应新增节点,以及需要删除文件节点也没有删除掉。...这个原因主要是”在新增appSettings节点时,不会写入App.config或web.config中,因为AppSetting这样节点属于内置节点,会存储在Machine.config文件中。....,也提供了几种较为常用操作方法,希望对在项目中需要使用到配置文件开发人员有用。

94290

CSharp工程中几个文件

以下基于.NET Framework4.6及.NET Core2.0 .csproj 用于配置项目信息,: 程序集名称、类型 Framework版本 项目所包含文件信息,:cs...以Web.config为例,该文件用于配置Web项目运行时所需信息,: Framework版本信息 <compilation debug="true" targetFramework...若项目启动后报错:未能加载文件或程序集“XXXXXX”或它某一个依赖项,找到程序集清单定义与程序集引用不匹配,则应当检查下项目所引用dll文件与Web.config中配置dll文件信息是否一致。...,我们添加对Dapper引用后 packages.config: <?xml version="1.0" encoding="utf-8"?...,,直接删除packages.config中对某个包引用,.csproj文件中依然保留了对该包引用,及packages文件夹中也会保留该包。

1.3K10

CSharp工程中几个文件

Web.config为例,该文件用于配置Web项目运行时所需信息,: Framework版本信息 <compilation debug="true" targetFramework...注意,这里所引用是项目在运行时所需程序集,而.csproj中描述程序集是项目中添加引用,二者有区别:项目中添加引用在运行时未必会用到。...,找到程序集清单定义与程序集引用不匹配,则应当检查下项目所引用dll文件与Web.config中配置dll文件信息是否一致。...,我们添加对Dapper引用后 packages.config: <?xml version="1.0" encoding="utf-8"?...,,直接删除packages.config中对某个包引用,.csproj文件中依然保留了对该包引用,及packages文件夹中也会保留该包。

1.2K20
领券