首页
学习
活动
专区
工具
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的值。

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

相关·内容

  • PageAdmin CMS模板约定的文件和目录说明

    用PageAdmin CMS制作模板时候,有几个重要的目录和文件需要遵循约定的规则。 1、Views目录 每个模板目录下的.cshtml文件必须放在Views目录下,这个是模板制作的约定规则。 2、Views/Web.Config 每个views目录下都必须有一个Web.Config配置文件,可以从现有模板中拷贝即可,主要用于mvc页面编译的声明,此文件不能删除,否则导致模板页面无法加载。 3、Views/_ViewStart.cshtml _ViewStart.cshtml文件为模板的启动文件,这个页面最大的作用是用于定义母版页的路径,如果没有这个页,只能在每个模板页从通过Layout ="模板页路径"这种方式来设置母版页路径,如果不是有特殊需求,建议直接在_ViewStart.cshtml中设置母版页路径,方便以为维护和修改。 4、Views/Model Model目录作用主要用于放一些和数据有关的局部页,如新闻局部页,一些幻灯片模型等等,在模板中通过Html.Partial("文件名")的方式引用。 5、Views/Shared Sharea目录作用和Model目录完全一样,但是为了维护上方面,一些和结构有关的页面建议放这个目录下,如上一页,下一页这种局部代码页面,或者分页模板这种局部页面,一样通过Html.Partial("文件名")的方式引用。 6、*Route.config 符合这个约定规则的文件都被视为自定义页面的路由配置文件,直接放在模板目录下,必须和Views目录同级。

    03
    领券