精华内容
下载资源
问答
  • WebConfig

    2011-12-06 16:03:49
    WebConfig 花了点时间整理了一下ASP.NET Web.config配置文件的基本使用方法。很适合新手参看,由于Web.config在使用很灵活,可以自定义一些节点。所以这里只介绍一些比较常用的节点。 xml version="1.0"?...
     
    

    WebConfig

    花了点时间整理了一下ASP.NET Web.config配置文件的基本使用方法。很适合新手参看,由于Web.config在使用很灵活,可以自定义一些节点。所以这里只介绍一些比较常用的节点。

    <?xml version="1.0"?>

    <!--注意: 除了手动编辑此文件以外,您还可以使用 Web 管理工具来配置应用程序的设置。可以使用 Visual Studio 中的“网站”->“Asp.Net 配置”选项。

    设置和注释的完整列表在 machine.config.comments 中,该文件通常位于 "Windows"Microsoft.Net"Framework"v2.x"Config 中。-->

     <!--Webconfig文件是一个xml文件,configuration是xml文件的根节点,由于xml文件的根节点只能有一个,所以Webconfig的所有配置都是在这个节点内进行的。-->

    <configuration>

      <!--指定配置节和命名空间声明。clear:移除对继承的节和节组的所有引用,只允许由当前 section 和 sectionGroup 元素添加的节和节组。remove:移除对继承的节和节组的引用。

     section:定义配置节处理程序与配置元素之间的关联。sectionGroup:定义配置节处理程序与配置节之间的关联。-->

     <configSections>

        <sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">

          <sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">

            <section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication"/>

          </sectionGroup>

        </sectionGroup>

        <section name="rewriter" type="Intelligencia.UrlRewriter.Configuration.RewriterConfigurationSectionHandler, Intelligencia.UrlRewriter" />

     </configSections>

     

     <!--appSettings是应用程序设置,可以定义应用程序的全局常量设置等信息-->

         <appSettings>

     <add key="1" value="1" />

     <add key="gao" value="weipeng" />

     </appSettings>

     

     <!--连接字符串设置-->

     <connectionStrings>

        <add name="ConnString" connectionString="Data Source=GAO;Initial Catalog=HBWXDate;User ID=sa;password=sa"></add>

        <add name="111" connectionString="11111" />

     </connectionStrings>

     

     <!--指定应用子配置设置的资源,并锁定配置设置,以防止它们被子配置文件重写。page指定应用包含的配置设置的资源.allowOverride是否允许配置文件的重写,提高配置文件的安全性-->

     <location path="Default.aspx" allowOverride="false">

        <!--控制asp.net运行时的行为-->

    <system.web>

        <!--identity控制web应用程序的身份验证标识.-->

        <identity impersonate="false" />

       

        <!--标识特定于页的配置设置(如是否启用会话状态、视图状态,是否检测用户的输入等)。<pages>可以在计算机、站点、应用程序和子目录级别声明.

        这里的几个属性的意思是默认主页为Index,主题是Default,不检测用户在浏览器输入的内容中是否存在潜在的危险数据(注:该项默认是检测,如果你使用了不检测,一要对用户的输入进行编码或验证),在从客户端回发页时将检查加密的视图状态,以验证视图状态是否已在客户端被篡改。(注:该项默认是不验证)禁用ViewState-->

        <pages masterPageFile="Index" theme="Default" buffer="true" enableViewStateMac="true" validateRequest="false" enableViewState="false">

          <!--controls 元素定义标记前缀所在的 register 指令和命名空间的集合-->

          <controls></controls>

          <!--将在程序集预编译期间使用的导入指令的集合-->

          <namespaces></namespaces>

        </pages>

       

        <!--默认错误页设置,mode:具有On,Off,RemoteOnly 3种状态。On表示始终显示自定义的信息; Off表示始终显示详细的asp.net错误信息; RemoteOnly表示只对不在本地Web服务器上运行的用户显示自定义信息.defaultRedirect:用于出现错误时重定向的URL地址-->

        <customErrors defaultRedirect="Err.html" mode="RemoteOnly">

          <!--特殊代码编号的错误从定向文件-->

          <error statusCode="403" redirect="NoAccess.htm" />

          <error statusCode="404" redirect="FileNotFound.htm" />

        </customErrors>

       

        <!--配置调试和跟踪:下面配置的意思是启动调试(默认),捕获跟踪信息,要缓存的跟踪请求个数(15),跟踪结果的排列顺序-->

        <trace enabled="true" localOnly="false" pageOutput="true" requestLimit="15" traceMode="SortByCategory"/>

       

        <!-- 设置 compilation debug="true" 将调试符号插入已编译的页面中。但由于这会影响性能,因此只在开发过程中将此值设置为 true。设置默认的开发语言C#。batch是否支持批处理-->

        <compilation debug="true" defaultLanguage="c#" batch="false">

          <assemblies>

            <!--加的程序集引用,每添加一个程序集,就表示你的应用程序已经依赖了一个程序集,你就可以在你的应用程序中使用了-->

            <add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>

            <add assembly="System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>

            <add assembly="System.Web.Extensions.Design, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

            <add assembly="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>

            <add assembly="System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>

            <add assembly="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>

            <add assembly="System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>

            <add assembly="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>

            <add assembly="System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>

            <add assembly="System.Web.Services, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>

            <add assembly="System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>

          </assemblies>

          <!--定义用于编译自定义资源文件的生成提供程序的集合。-->

          <buildProviders>

            <!---->

            <add extension=".aspx" type="System.Web.Compilation.PageBuildProvider"/>

            <add extension=".ascx" type="System.Web.Compilation.UserControlBuildProvider"/>

            <add extension=".master" type="System.Web.Compilation.MasterPageBuildProvider"/>

            <add extension=".asmx" type="System.Web.Compilation.WebServiceBuildProvider"/>

            <add extension=".ashx" type="System.Web.Compilation.WebHandlerBuildProvider"/>

            <add extension=".soap" type="System.Web.Compilation.WebServiceBuildProvider"/>

            <add extension=".resx" type="System.Web.Compilation.ResXBuildProvider"/>

            <add extension=".resources" type="System.Web.Compilation.ResourcesBuildProvider"/>

            <add extension=".wsdl" type="System.Web.Compilation.WsdlBuildProvider"/>

            <add extension=".xsd" type="System.Web.Compilation.XsdBuildProvider"/>

            <add extension=".rdlc" type="Microsoft.Reporting.RdlBuildProvider, Microsoft.ReportViewer.Common, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>

          </buildProviders>

        </compilation>

       

          <!--通过 <authentication> 节可以配置 ASP.NET 使用的 安全身份验证模式,以标识传入的用户。Windows: 使用IIS验证方式,Forms: 使用基于窗体的验证方式,Passport: 采用Passport cookie验证模式,None: 不采用任何验证方式-->

        <authentication mode="Forms">

          <!--Name: 指定完成身份验证的Http cookie的名称.LoginUrl: 如果未通过验证或超时后重定向的页面URL,一般为登录页面,让用户重新登录。Protection: 指定 cookie数据的保护方式. 

          可设置为:All表示加密数据,并进行有效性验证两种方式,None表示不保护Cookie,Encryption表示对Cookie内容进行加密,validation表示对Cookie内容进行有效性验证,TimeOut: 指定Cookie的失效时间. 超时后要重新登录。-->

          <forms name=".ASPXUSERDEMO" loginUrl="Login.aspx" protection="All" timeout="30"/>

        </authentication>

        <!--控制对 URL 资源的客户端访问(如允许匿名用户访问)。此元素可以在任何级别(计算机、站点、应用程序、子目录或页)上声明。必需与<authentication> 节配合使用。此处的意思是对匿名用户不进行身份验证。拒绝用户weipeng-->

        <authorization>

          <allow users="*"/>

          <deny users="weipeng"/>

          <allow users="aa" roles="aa" />

        </authorization>

        <!--站点全球化设置,requestEncoding: 它用来检查每一个发来请求的编码.responseEncoding: 用于检查发回的响应内容编码.fileEncoding:用于检查aspx,asax等文件解析的默认编码,默认的编码是utf-8-->

        <globalization requestEncoding="gb2312" responseEncoding="gb2312" fileEncoding="gb2312" />

        <!--会话状态设置。mode: 分为off,Inproc,StateServer,SqlServer几种状态 mode = InProc 存储在进程中特点:具有最佳的性能,速度最快,但不能跨多台服务器存储共享.mode = "StateServer" 存储在状态服务器中特点:当需要跨服务器维护用户会话信息时,使用此方法。但是信息存储在状态服务器上,一旦状态服务器出现故障,信息将丢失. mode="SqlServer" 存储在sql server中特点:工作负载会变大,但信息不会丢失

        stateConnectionString :指定asp.net应用程序存储远程会话状态的服务器名,默认为本机。sqlConnectionString:当用会话状态数据库时,在这里设置连接字符串。Cookieless:设置为flase时,表示使用cookie会话状态来标识客户.timeout表示会话超时时间。-->

        <sessionState mode="InProc" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="20"></sessionState>

        <!--为 ASP.NET 应用程序配置页的视图状态设置。设置要存储在页历史记录中的项数。-->

        <sessionPageState historySize="9"/>   

        <!--配置asp.net http运行库的设置。可以在计算机,站点,应用程序和子目录级别声明

        允许最多的请求个数100,最长允许执行请求时间为80秒,控制用户上传文件的大小,默认是4M。useFullyQualifiedRedirectUrl客户端重定向不需要被自动转换为完全限定格式。-->

        <httpRuntime appRequestQueueLimit="100" executionTimeout="80" maxRequestLength="40960" useFullyQualifiedRedirectUrl="false"/>

        <!--httpModules在一个应用程序内配置 HTTP 模块。-->

        <httpModules>

          <add name="OutputCache" type="System.Web.Caching.OutputCacheModule" />

          <add name="Session" type="System.Web.SessionState.SessionStateModule" />

          <add name="WindowsAuthentication" type="System.Web.Security.WindowsAuthenticationModule" />

          <add name="FormsAuthentication" type="System.Web.Security.FormsAuthenticationModule" />

          <add name="PassportAuthentication" type="System.Web.Security.PassportAuthenticationModule" />

          <add name="RoleManager" type="System.Web.Security.RoleManagerModule" />

          <add name="UrlAuthorization" type="System.Web.Security.UrlAuthorizationModule" />

          <add name="FileAuthorization" type="System.Web.Security.FileAuthorizationModule" />

          <add name="AnonymousIdentification" type="System.Web.Security.AnonymousIdentificationModule" />

          <!--自定义的URL重写,type基本上就是dll名-->

          <add name="UrlRewriter" type="Intelligencia.UrlRewriter.RewriterHttpModule, Intelligencia.UrlRewriter" />

          <add name="Profile" type="System.Web.Profile.ProfileModule" />

        </httpModules> 

        <!--httpHandlers用于根据用户请求的URL和HTTP谓词将用户的请求交给相应的处理程序。可以在配置级别的任何层次配置此节点,也就是说可以针对某个特定目录下指定的特殊文件进行特殊处理。

        add:指定映射到处理程序的谓词/路径。clear:移除当前已配置或已继承的所有处理程序映射。remove:移除映射到处理程序的谓词/路径。remove 指令必须与前一个 add 指令的谓词/路径组合完全匹配。该指令不支持通配符。-->

        <httpHandlers>

          <remove verb="*" path="*.asmx"/>

          <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>

          <add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>

          <add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false"/>

          <add verb="POST,GET" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory, AjaxPro.2"/>

        </httpHandlers>

        <!--为 Web 应用程序使用的 Cookie 配置属性。domain:设置 Cookie 域名。httpOnlyCookies:在 Internet Explorer 6 SP1 中启用 HttpOnlyCookies Cookie 的输出。默认值为 false。requireSSL:获取一个指示是否需要安全套接字层 (SSL) 通信的值.-->

        <httpCookies httpOnlyCookies="false" requireSSL="false"/> 

        <!--控制 ASP.NET Web 服务及其客户端的行为。protocols:指定传输协议,ASP.NET 可使用这些传输协议来解密 HTTP-->

        <webServices>

          <protocols>

            <add/>

          </protocols>

        </webServices>

        <!--为 Web 应用程序配置缓存设置。cache:定义全局应用程序缓存设置。outputCache :指定应用程序范围的输出缓存设置。outputCacheSettings:指定可以应用于应用程序中页的输出缓存设置。sqlCacheDependency:为 ASP.NET 应用程序配置 SQL 缓存依赖项。-->

        <caching>

          <cache disableMemoryCollection = "false" disableExpiration = "false" privateBytesLimit = "0" percentagePhysicalMemoryUsedLimit = "90" privateBytesPollTime = "00:02:00"/>

          <!--设计需要以这种方式缓存的页时,您需要向该页添加以下指令:<%@ OutputCache CacheProfile="ServerOnly" %>-->

          <outputCacheSettings>

            <outputCacheProfiles>

              <add name="ServerOnly" duration="60" varyByCustom="browser" location="Server" />

            </outputCacheProfiles>

          </outputCacheSettings>

        </caching>

         </system.web>

     

     </location>

     <!--网络设置,authenticationModules:指定用于对 Internet 请求进行身份验证的模块。connectionManagement:指定与 Internet 宿主的连接的最大数目。defaultProxy:配置超文本传输协议 (HTTP) 代理服务器。

     mailSettings:配置简单邮件传输协议 (SMTP) 邮件发送选项。requestCaching:控制网络请求的缓存机制。settings:配置 System.Net 的基本网络选项。-->

     <system.net>

     <!--配置SMTP电子邮件设置-->

     <mailSettings>

       <smtp from="weipeng">

        <network host="Gao" password="" userName="" />

       </smtp>

     </mailSettings>

       <!--禁用所有缓存-->

       <requestCaching disableAllCaching="true"></requestCaching>

       <!--指定代理地址,并对本地访问和 contoso.com 跳过代理。-->

       <defaultProxy>

         <proxy usesystemdefault="True" proxyaddress="http://192.168.1.10:3128" bypassonlocal="True"/>

         <bypasslist>

           <add address="[a-z]+".contoso".com" />

         </bypasslist>

       </defaultProxy>

     </system.net>

     <!--该节替换在 httpHandlers 和 httpModules 节中添加的与 AJAX 相关的 HTTP 处理程序和模块。该节使 IIS 7.0 在集成模式下运行时可使用这些处理程序和模块。在iis7.0 下运行 ASP.NET AJAX 需要 system.webServer

     节。对早期版本的 IIS 来说则不需要此节。 -->

     <system.webServer>

        <validation validateIntegratedModeConfiguration="false"/>

        <modules>

          <add name="ScriptModule" preCondition="integratedMode" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

        </modules>

        <handlers>

          <remove name="WebServiceHandlerFactory-Integrated"/>

          <add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

          <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

          <add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

        </handlers>

     </system.webServer>

     

     <!--ASP.NET AJAX 中配置 ASP.NET 服务-->

     <system.web.extensions>

        <!--配置 JSON 序列化-->

        <scripting>

          <webServices>

            <jsonSerialization maxJsonLength="5000"/>

          </webServices>

        </scripting>

     </system.web.extensions>

     <!--对WCF的相关配置-->

     <system.serviceModel>

        <services>

          <service name="WCFStudent.WCFStudentText" behaviorConfiguration="ServiceBehavior">

            <!-- Service Endpoints -->

            <endpoint address="" binding="wsHttpBinding" contract="WCFStudent.IStuServiceContract">

              <!-- 部署时,应删除或替换下列标识元素,以反映在其下运行部署服务的标识。删除之后,WCF 将自动推导相应标识。-->

              <identity>

                <dns value="localhost"/>

              </identity>

            </endpoint>

            <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>

          </service>

        </services>

        <behaviors>

          <serviceBehaviors>

            <behavior name="ServiceBehavior">

              <!-- 为避免泄漏元数据信息,请在部署前将以下值设置为 false 并删除上面的元数据终结点 -->

              <serviceMetadata httpGetEnabled="true"/>

              <!-- 要接收故障异常详细信息以进行调试,请将以下值设置为 true。在部署前设置为 false 以避免泄漏异常信息-->

              <serviceDebug includeExceptionDetailInFaults="false"/>

            </behavior>

          </serviceBehaviors>

        </behaviors>

     </system.serviceModel>

     

     <!--URL重定向-->

     <rewriter>

        <rewrite url="~/user/u(.+).aspx" to="~/user/index.aspx?r=$1" />

        <rewrite url="~/ask/q(.+).aspx" to="~/home/ask/content.aspx?id=$1" />

        <rewrite url="~/blog/b(.+).aspx" to="~/home/blog/article.aspx?r=$1" />

        <rewrite url="~/news/n(.+).aspx" to="~/home/news/content.aspx?nid=$1" />

        <rewrite url="~/default.aspx" to="~/home/ram/net.aspx" />

     </rewriter>

    </configuration>

    展开全文
  • webconfig

    2019-01-16 08:36:07
  • webConfig

    2009-12-20 02:51:00
    一、认识Web.config文件  Web.config文件是一个XML文本文件,它用来储存 ASP.NET Web 应用程序的配置信息(如最常用的设置ASP.NET Web 应用程序的身份验证方式),它可以出现在应用程序的每一个目录中。...

    一、认识Web.config文件

     

      Web.config文件是一个XML文本文件,它用来储存 ASP.NET Web 应用程序的配置信息(如最常用的设置ASP.NET Web 应用程序的身份验证方式),它可以出现在应用程序的每一个目录中。当你通过VB.NET新建一个Web应用程序后,默认情况下会在根目录自动创建一个默认 的
    Web.config文件,包括默认的配置设置,所有的子目录都继承它的配置设置。如果你想修改子目录的配置设置,你可以在该子目录下新建一个Web.config文件。它可以提供除从父目录继承的配置信息以外的配置信息,也可以重写或修改父目录中定义的设置。

      在运行时对Web.config文件的修改不需要重启服务就可以生效(注:<processModel> 节例外)。当然Web.config文件是可以扩展的。你可以自定义新配置参数并编写配置节处理程序以对它们进行处理。

      二、web.config配置文件(默认的配置设置)以下所有的代码都应该位于

    <configuration>
    <system.web>

      和

    </system.web>
    </configuration>

      之间,出于学习的目的下面的示例都省略了这段XML标记

      1、<authentication> 节

      作用:配置 ASP.NET 身份验证支持(为Windows、Forms、PassPort、None四种)。该元素只能在计算机、站点或应用程序级别声明。< authentication> 元素必需与<authorization> 节配合使用。

      示例:

      以下示例为基于窗体(Forms)的身份验证配置站点,当没有登陆的用户访问需要身份验证的网页,网页自动跳转到登陆网页。

    <authentication mode="Forms" >
    <forms loginUrl="logon.aspx" name=".FormsAuthCookie"/>

    </authentication>

      其中元素loginUrl表示登陆网页的名称,name表示Cookie名称

      2、<authorization> 节

      作用:控制对 URL 资源的客户端访问(如允许匿名用户访问)。此元素可以在任何级别(计算机、站点、应用程序、子目录或页)上声明。必需与<authentication> 节配合使用。

      示例:以下示例禁止匿名用户的访问

    <authorization>
    <deny users="?"/>
    </authorization>

      注:你可以使用user.identity.name来获取已经过验证的当前的用户名;可以使用
    web.Security.FormsAuthentication.RedirectFromLoginPage方法将已验证的用户重定向到用户刚才请求的页面.具体的实例请参考:

      Forms验证 http://www.fanvb.net/websample/dataauth.aspx

      3、<compilation>节

      作用:配置 ASP.NET 使用的所有编译设置。默认的debug属性为“True”.在程序编译完成交付使用之后应将其设为True(Web.config文件中有详细说明,此处省略示例)

      4、<customErrors>

      作用:为 ASP.NET 应用程序提供有关自定义错误信息的信息。它不适用于 XML Web services 中发生的错误。

      示例:当发生错误时,将网页跳转到自定义的错误页面。

    <customErrors defaultRedirect="ErrorPage.aspx" mode="RemoteOnly">
    </customErrors>

      其中元素defaultRedirect表示自定义的错误网页的名称。mode元素表示:对不在本地 Web 服务器上运行的用户显示自定义(友好的)信息。

      5、<httpRuntime>节

      作用:配置 ASP.NET HTTP 运行库设置。该节可以在计算机、站点、应用程序和子目录级别声明。

      示例:控制用户上传文件最大为4M,最长时间为60秒,最多请求数为100

    <httpRuntime maxRequestLength="4096" executionTimeout="60" appRequestQueueLimit="100"/>

      6、 <pages>

      作用:标识特定于页的配置设置(如是否启用会话状态、视图状态,是否检测用户的输入等)。<pages>可以在计算机、站点、应用程序和子目录级别声明。

      示例:不检测用户在浏览器输入的内容中是否存在潜在的危险数据(注:该项默认是检测,如果你使用了不检测,一要对用户的输入进行编码或验证),在从客户端回发页时将检查加密的视图状态,以验证视图状态是否已在客户端被篡改。(注:该项默认是不验证)

    <pages buffer="true" enableViewStateMac="true" validateRequest="false"/>

      7、<sessionState>

      作用:为当前应用程序配置会话状态设置(如设置是否启用会话状态,会话状态保存位置)。

      示例:

    <sessionState mode="InProc" cookieless="true" timeout="20"/>
    </sessionState>

      注:

      mode="InProc"表示:在本地储存会话状态(你也可以选择储存在远程服务器或SAL服务器中或不启用会话状态)

      cookieless="true"表示:如果用户浏览器不支持Cookie时启用会话状态(默认为False)

      timeout="20"表示:会话可以处于空闲状态的分钟数

      8、<trace>

      作用:配置 ASP.NET 跟踪服务,主要用来程序测试判断哪里出错。

      示例:以下为Web.config中的默认配置:

    <trace enabled="false" requestLimit="10" pageOutput="false" traceMode="SortByTime" localOnly="true" />

      注:

      enabled="false"表示不启用跟踪;requestLimit="10"表示指定在服务器上存储的跟踪请求的数目

      pageOutput="false"表示只能通过跟踪实用工具访问跟踪输出;

      traceMode="SortByTime"表示以处理跟踪的顺序来显示跟踪信息

      localOnly="true" 表示跟踪查看器 (trace.axd) 只用于宿主 Web 服务器

      三、自定义Web.config文件配置节

      自定义Web.config文件配置节过程分为两步。

      一是在在配置文件顶部 <configSections> 和 </configSections>标记之间声明配置节的名称和处理该节中配置数据的 .NET Framework 类的名称。

      二是在 <configSections> 区域之后为声明的节做实际的配置设置。

      示例:创建一个节存储数据库连接字符串

    <configuration>
    <configSections>
    <section name="appSettings" type="System.Configuration.NameValueFileSectionHandler, System, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
    </configSections>

     <appSettings>
    <add key="scon" value="server=a;database=northwind;uid=sa;pwd=123"/>
    </appSettings>

     <system.web>
    ......
    </system.web>
    </configuration>

      四、访问Web.config文件

      你可以通过使用ConfigurationSettings.AppSettings 静态字符串集合来访问 Web.config 文件示例:获取上面例子中建立的连接字符串。

    Dim sconstr As String = ConfigurationSettings.AppSettings("SconStr")
    Dim scon = New SqlConnection(sconstr)

     

      Web.config文件是一个XML文本文件,它用来储存 ASP.NET Web 应用程序的配置信息(如最常用的设置ASP.NET Web 应用程序的身份验证方式),它可以出现在应用程序的每一个目录中。当你通过VB.NET新建一个Web应用程序后,默认情况下会在根目录自动创建一个默认 的
    Web.config文件,包括默认的配置设置,所有的子目录都继承它的配置设置。如果你想修改子目录的配置设置,你可以在该子目录下新建一个Web.config文件。它可以提供除从父目录继承的配置信息以外的配置信息,也可以重写或修改父目录中定义的设置。

      在运行时对Web.config文件的修改不需要重启服务就可以生效(注:<processModel> 节例外)。当然Web.config文件是可以扩展的。你可以自定义新配置参数并编写配置节处理程序以对它们进行处理。

      二、web.config配置文件(默认的配置设置)以下所有的代码都应该位于

    <configuration>
    <system.web>

      和

    </system.web>
    </configuration>

      之间,出于学习的目的下面的示例都省略了这段XML标记

      1、<authentication> 节

      作用:配置 ASP.NET 身份验证支持(为Windows、Forms、PassPort、None四种)。该元素只能在计算机、站点或应用程序级别声明。< authentication> 元素必需与<authorization> 节配合使用。

      示例:

      以下示例为基于窗体(Forms)的身份验证配置站点,当没有登陆的用户访问需要身份验证的网页,网页自动跳转到登陆网页。

    <authentication mode="Forms" >
    <forms loginUrl="logon.aspx" name=".FormsAuthCookie"/>

    </authentication>

      其中元素loginUrl表示登陆网页的名称,name表示Cookie名称

      2、<authorization> 节

      作用:控制对 URL 资源的客户端访问(如允许匿名用户访问)。此元素可以在任何级别(计算机、站点、应用程序、子目录或页)上声明。必需与<authentication> 节配合使用。

      示例:以下示例禁止匿名用户的访问

    <authorization>
    <deny users="?"/>
    </authorization>

      注:你可以使用user.identity.name来获取已经过验证的当前的用户名;可以使用
    web.Security.FormsAuthentication.RedirectFromLoginPage方法将已验证的用户重定向到用户刚才请求的页面.具体的实例请参考:

      Forms验证 http://www.fanvb.net/websample/dataauth.aspx

      3、<compilation>节

      作用:配置 ASP.NET 使用的所有编译设置。默认的debug属性为“True”.在程序编译完成交付使用之后应将其设为True(Web.config文件中有详细说明,此处省略示例)

      4、<customErrors>

      作用:为 ASP.NET 应用程序提供有关自定义错误信息的信息。它不适用于 XML Web services 中发生的错误。

      示例:当发生错误时,将网页跳转到自定义的错误页面。

    <customErrors defaultRedirect="ErrorPage.aspx" mode="RemoteOnly">
    </customErrors>

      其中元素defaultRedirect表示自定义的错误网页的名称。mode元素表示:对不在本地 Web 服务器上运行的用户显示自定义(友好的)信息。

      5、<httpRuntime>节

      作用:配置 ASP.NET HTTP 运行库设置。该节可以在计算机、站点、应用程序和子目录级别声明。

      示例:控制用户上传文件最大为4M,最长时间为60秒,最多请求数为100

    <httpRuntime maxRequestLength="4096" executionTimeout="60" appRequestQueueLimit="100"/>

      6、 <pages>

      作用:标识特定于页的配置设置(如是否启用会话状态、视图状态,是否检测用户的输入等)。<pages>可以在计算机、站点、应用程序和子目录级别声明。

      示例:不检测用户在浏览器输入的内容中是否存在潜在的危险数据(注:该项默认是检测,如果你使用了不检测,一要对用户的输入进行编码或验证),在从客户端回发页时将检查加密的视图状态,以验证视图状态是否已在客户端被篡改。(注:该项默认是不验证)

    <pages buffer="true" enableViewStateMac="true" validateRequest="false"/>

      7、<sessionState>

      作用:为当前应用程序配置会话状态设置(如设置是否启用会话状态,会话状态保存位置)。

      示例:

    <sessionState mode="InProc" cookieless="true" timeout="20"/>
    </sessionState>

      注:

      mode="InProc"表示:在本地储存会话状态(你也可以选择储存在远程服务器或SAL服务器中或不启用会话状态)

      cookieless="true"表示:如果用户浏览器不支持Cookie时启用会话状态(默认为False)

      timeout="20"表示:会话可以处于空闲状态的分钟数

      8、<trace>

      作用:配置 ASP.NET 跟踪服务,主要用来程序测试判断哪里出错。

      示例:以下为Web.config中的默认配置:

    <trace enabled="false" requestLimit="10" pageOutput="false" traceMode="SortByTime" localOnly="true" />

      注:

      enabled="false"表示不启用跟踪;requestLimit="10"表示指定在服务器上存储的跟踪请求的数目

      pageOutput="false"表示只能通过跟踪实用工具访问跟踪输出;

      traceMode="SortByTime"表示以处理跟踪的顺序来显示跟踪信息

      localOnly="true" 表示跟踪查看器 (trace.axd) 只用于宿主 Web 服务器

      三、自定义Web.config文件配置节

      自定义Web.config文件配置节过程分为两步。

      一是在在配置文件顶部 <configSections> 和 </configSections>标记之间声明配置节的名称和处理该节中配置数据的 .NET Framework 类的名称。

      二是在 <configSections> 区域之后为声明的节做实际的配置设置。

      示例:创建一个节存储数据库连接字符串

    <configuration>
    <configSections>
    <section name="appSettings" type="System.Configuration.NameValueFileSectionHandler, System, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
    </configSections>

     <appSettings>
    <add key="scon" value="server=a;database=northwind;uid=sa;pwd=123"/>
    </appSettings>

     <system.web>
    ......
    </system.web>
    </configuration>

      四、访问Web.config文件

      你可以通过使用ConfigurationSettings.AppSettings 静态字符串集合来访问 Web.config 文件示例:获取上面例子中建立的连接字符串。

    Dim sconstr As String = ConfigurationSettings.AppSettings("SconStr")
    Dim scon = New SqlConnection(sconstr)

     

      Web.config文件是一个XML文本文件,它用来储存 ASP.NET Web 应用程序的配置信息(如最常用的设置ASP.NET Web 应用程序的身份验证方式),它可以出现在应用程序的每一个目录中。当你通过VB.NET新建一个Web应用程序后,默认情况下会在根目录自动创建一个默认 的
    Web.config文件,包括默认的配置设置,所有的子目录都继承它的配置设置。如果你想修改子目录的配置设置,你可以在该子目录下新建一个Web.config文件。它可以提供除从父目录继承的配置信息以外的配置信息,也可以重写或修改父目录中定义的设置。

      在运行时对Web.config文件的修改不需要重启服务就可以生效(注:<processModel> 节例外)。当然Web.config文件是可以扩展的。你可以自定义新配置参数并编写配置节处理程序以对它们进行处理。

      二、web.config配置文件(默认的配置设置)以下所有的代码都应该位于

    <configuration>
    <system.web>

      和

    </system.web>
    </configuration>

      之间,出于学习的目的下面的示例都省略了这段XML标记

      1、<authentication> 节

      作用:配置 ASP.NET 身份验证支持(为Windows、Forms、PassPort、None四种)。该元素只能在计算机、站点或应用程序级别声明。< authentication> 元素必需与<authorization> 节配合使用。

      示例:

      以下示例为基于窗体(Forms)的身份验证配置站点,当没有登陆的用户访问需要身份验证的网页,网页自动跳转到登陆网页。

    <authentication mode="Forms" >
    <forms loginUrl="logon.aspx" name=".FormsAuthCookie"/>

    </authentication>

      其中元素loginUrl表示登陆网页的名称,name表示Cookie名称

      2、<authorization> 节

      作用:控制对 URL 资源的客户端访问(如允许匿名用户访问)。此元素可以在任何级别(计算机、站点、应用程序、子目录或页)上声明。必需与<authentication> 节配合使用。

      示例:以下示例禁止匿名用户的访问

    <authorization>
    <deny users="?"/>
    </authorization>

      注:你可以使用user.identity.name来获取已经过验证的当前的用户名;可以使用
    web.Security.FormsAuthentication.RedirectFromLoginPage方法将已验证的用户重定向到用户刚才请求的页面.具体的实例请参考:

      Forms验证 http://www.fanvb.net/websample/dataauth.aspx

      3、<compilation>节

      作用:配置 ASP.NET 使用的所有编译设置。默认的debug属性为“True”.在程序编译完成交付使用之后应将其设为True(Web.config文件中有详细说明,此处省略示例)

      4、<customErrors>

      作用:为 ASP.NET 应用程序提供有关自定义错误信息的信息。它不适用于 XML Web services 中发生的错误。

      示例:当发生错误时,将网页跳转到自定义的错误页面。

    <customErrors defaultRedirect="ErrorPage.aspx" mode="RemoteOnly">
    </customErrors>

      其中元素defaultRedirect表示自定义的错误网页的名称。mode元素表示:对不在本地 Web 服务器上运行的用户显示自定义(友好的)信息。

      5、<httpRuntime>节

      作用:配置 ASP.NET HTTP 运行库设置。该节可以在计算机、站点、应用程序和子目录级别声明。

      示例:控制用户上传文件最大为4M,最长时间为60秒,最多请求数为100

    <httpRuntime maxRequestLength="4096" executionTimeout="60" appRequestQueueLimit="100"/>

      6、 <pages>

      作用:标识特定于页的配置设置(如是否启用会话状态、视图状态,是否检测用户的输入等)。<pages>可以在计算机、站点、应用程序和子目录级别声明。

      示例:不检测用户在浏览器输入的内容中是否存在潜在的危险数据(注:该项默认是检测,如果你使用了不检测,一要对用户的输入进行编码或验证),在从客户端回发页时将检查加密的视图状态,以验证视图状态是否已在客户端被篡改。(注:该项默认是不验证)

    <pages buffer="true" enableViewStateMac="true" validateRequest="false"/>

      7、<sessionState>

      作用:为当前应用程序配置会话状态设置(如设置是否启用会话状态,会话状态保存位置)。

      示例:

    <sessionState mode="InProc" cookieless="true" timeout="20"/>
    </sessionState>

      注:

      mode="InProc"表示:在本地储存会话状态(你也可以选择储存在远程服务器或SAL服务器中或不启用会话状态)

      cookieless="true"表示:如果用户浏览器不支持Cookie时启用会话状态(默认为False)

      timeout="20"表示:会话可以处于空闲状态的分钟数

      8、<trace>

      作用:配置 ASP.NET 跟踪服务,主要用来程序测试判断哪里出错。

      示例:以下为Web.config中的默认配置:

    <trace enabled="false" requestLimit="10" pageOutput="false" traceMode="SortByTime" localOnly="true" />

      注:

      enabled="false"表示不启用跟踪;requestLimit="10"表示指定在服务器上存储的跟踪请求的数目

      pageOutput="false"表示只能通过跟踪实用工具访问跟踪输出;

      traceMode="SortByTime"表示以处理跟踪的顺序来显示跟踪信息

      localOnly="true" 表示跟踪查看器 (trace.axd) 只用于宿主 Web 服务器

      三、自定义Web.config文件配置节

      自定义Web.config文件配置节过程分为两步。

      一是在在配置文件顶部 <configSections> 和 </configSections>标记之间声明配置节的名称和处理该节中配置数据的 .NET Framework 类的名称。

      二是在 <configSections> 区域之后为声明的节做实际的配置设置。

      示例:创建一个节存储数据库连接字符串

    <configuration>
    <configSections>
    <section name="appSettings" type="System.Configuration.NameValueFileSectionHandler, System, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
    </configSections>

     <appSettings>
    <add key="scon" value="server=a;database=northwind;uid=sa;pwd=123"/>
    </appSettings>

     <system.web>
    ......
    </system.web>
    </configuration>

      四、访问Web.config文件

      你可以通过使用ConfigurationSettings.AppSettings 静态字符串集合来访问 Web.config 文件示例:获取上面例子中建立的连接字符串。

    Dim sconstr As String = ConfigurationSettings.AppSettings("SconStr")
    Dim scon = New SqlConnection(sconstr)

      Web.config文件是一个XML文本文件,它用来储存 ASP.NET Web 应用程序的配置信息(如最常用的设置ASP.NET Web 应用程序的身份验证方式),它可以出现在应用程序的每一个目录中。当你通过VB.NET新建一个Web应用程序后,默认情况下会在根目录自动创建一个默认 的
    Web.config文件,包括默认的配置设置,所有的子目录都继承它的配置设置。如果你想修改子目录的配置设置,你可以在该子目录下新建一个Web.config文件。它可以提供除从父目录继承的配置信息以外的配置信息,也可以重写或修改父目录中定义的设置。

      在运行时对Web.config文件的修改不需要重启服务就可以生效(注:<processModel> 节例外)。当然Web.config文件是可以扩展的。你可以自定义新配置参数并编写配置节处理程序以对它们进行处理。

      二、web.config配置文件(默认的配置设置)以下所有的代码都应该位于

    <configuration>
    <system.web>

      和

    </system.web>
    </configuration>

      之间,出于学习的目的下面的示例都省略了这段XML标记

      1、<authentication> 节

      作用:配置 ASP.NET 身份验证支持(为Windows、Forms、PassPort、None四种)。该元素只能在计算机、站点或应用程序级别声明。< authentication> 元素必需与<authorization> 节配合使用。

      示例:

      以下示例 ...

    转载于:https://www.cnblogs.com/xiaoQcn/archive/2009/12/20/1652882.html

    展开全文
  • webconfig详解

    2013-02-02 16:46:51
    webconfig详解.
  • webconfig加解密

    2016-12-09 16:12:09
    webconfig加解密
  • webconfig配置

    2012-08-31 15:54:02
    ASP.NET webconfig配置文件解析,很好的学校资料
  • .net中webconfig 详解

    2020-10-24 19:06:19
    主要介绍了.net中webconfig 详解,需要的朋友可以参考下
  • 未能加载文件或程序集“System.Web.Http.WebHost, Version=5.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364...dll 与 webconfig 配置冲突 关键 是解决了一个 又 出现一个 不停报这种错误, 有什么解决办法吗
  • WebConfig配置详解

    2014-02-08 15:10:44
    WebConfig配置详解
  • webconfig操作类

    2011-11-17 14:11:08
    webconfig操作类,c#webconfig操作类,c#webconfig操作类,c#webconfig操作类,c#webconfig操作类,c#webconfig操作类,c#webconfig操作类,c#webconfig操作类,c#webconfig操作类,c#webconfig操作类,c#
  • 配置webconfig

    2018-05-27 23:29:00
    记录下webconfig的配置(复制很久的笔记): 1、 配置Session在url传递 在web.config中的 <system.web> 节点下添加,手动修改session的相关设置 <sessionState timeout="5" cookieless="true"> </...

    记录下webconfig的配置(复制很久的笔记):

    1、 配置Session在url传递

    在web.config中的 <system.web> 节点下添加,手动修改session的相关设置

    <sessionState timeout="5" cookieless="true"> </sessionState>

    2、 配置上传文件大于4M,里面是字节数,比如下面10M是1024*1024*10

    <system.web>

        <httpRuntime targetFramework="4.5" maxRequestLength="10485760"/>

    </system.web>

    3、比如上传1g的内容。请求的筛选模块是被直接拒绝,不会到后台指定的页面的,跟上面的界面配置要相同才行

    <configuration>

      <system.webServer>

    <security>

        <requestFiltering>

          <requestLimits maxAllowedContentLength="1073741824"></requestLimits>

        </requestFiltering>

      </security>

      </system.webServer>

    </configuration>

    4、自定义一般处理程序类及配置

     

    ①新建一个类,继承IHttpHandler,实现里面的ProcessRequest方法与IsReusable属性。属性中如果get{return false;}表示每次浏览器的请求都会新创建这个一般处理程序的类的对象,为true每次浏览器请求都是重用第一次创建的类的对象

    ②比如用户需要xxx.hh这样子在浏览器中访问,我们新建的这个类继承IhttpHandler接口之后实现里面的代码专门接管处理这样的需求。如果要要Session,还要实现Session的接口。 verb的GET与POST一定是大写,也可以*或者GET或者POST。

    ③参数name:可以由程序自己定义,建议取有意义的名字,多个配置的name值不能重复

          参数path:告诉asp.net处理机制,什么样的url才会给 type指定的类型类处理

          参数verb:告诉asp.net处理机制,是GET或者POST请求才进行截获处理

    IIS集成模式下配置

     <system.webServer>

    <!--适配IIS集成模式-->

        <handlers>

          <add name="iishander" path="*.hh" verb="*" type="WebApplication1.IISHandler1"/>

        </handlers>

      </system.webServer>

    IIS经典模式下配置

    <system.web>

     <httpHandlers>

          <add path="*.hh" verb="get,post" type="WebApplication1.IISHandler1" />

        </httpHandlers>

      </system.web>

    5、配置URL重写,新建一个类实现IHttpMoudle接口,或者写在Global中(不需要配置文件)

    ①<system.webServer>

        <modules>

          <add name="url rewrite" type="利用过滤器实现url重写.UrlRewrite"/>

        </modules>

      </system.webServer>

    ②利用IIS  Url重写模块来实现url的友好重写

    利用IIS  Url重写模块来实现url的友好重写

    在Web平台安装程序下载URL重写工具安装,返回就看到这个工具了。点击打开,添加规则,友好url,输入动态的url……(就是重写之前的url)

    6、进程外Session

    使用状态服务器存session

    注意session存储的对象必须支持可序列化,即类上面增加[Serializable]特性

    <sessionState stateConnectionString="tcpip=127.0.0.1:42424" mode="StateServer"/>

    修改默认端口:

     

    使用数据库存session

    1、  Session保存的位置:

    <sessionState mode=“InProc | StateServer| SQLServer”>

    <sessionState stateConnectionString="tcpip=127.0.0.1:42424" mode="StateServer"/>

    创建数据库脚本文件在C:\Windows\Microsoft.NET\Framework\v4.0.30319下的:InstallPersistSqlState.sql和InstallSqlState.sql

    可以用下面命令安装保存Session的数据库,sa,master aspbetdb用户名,密码,数据库

    aspnet_regsql -U sa -P master –ssadd -sstype c -d aspnetdb

    一定要开数据库的TCPIP连接,否则不能创建成功

    web.config可以配置成:

    <sessionState  sqlConnectionString="server=.;database=aspnetdb;uid=sa;pwd=;" allowCustomSqlDatabase="true"  mode="SQLServer"/>

    7、Cache

    <%@ OutputCache Duration="60" VaryByParam="none" %>

    VaryByParam

    是指页面根据使用 POST 或 GET 发送的名称/值对(参数)来更新缓存的内容,多个参数用分号隔开。如果不希望根据任何参数来改变缓存内容,请将值设置为 none。如果希望通过所有的参数值改变都更新缓存,请将属性设置为星号 (*)。

    例如: http://localhost:1852/WebForm.aspx?p=1 
    则可以在WebForm1.aspx页面头部声明缓存:

    <%@ OutputCache Duration="60" VaryByParam="p" %>

    以上代码设置页面缓存时间是60秒,并根据p参数的值来更新缓存,即p的值发生变化才更新缓存。

    如果一直是WebForm1.aspx?p=1访问该页,则页面会缓存当前数据,当p=2时又会执行后台代码更新缓存内容。

     

    如果有多个参数时,如:http://localhost:1852/WebForm.aspx?pp=1&ln=1

    可以这样声明:<%@ OutputCache Duration="60" VaryByParam="pp;ln" %> 

    根据控件ID缓存<%@ OutputCache Duration="60" VaryByControl="ID" %> 

    在WebConfig中配置,直接读取配置文件(指令集:<%@ OutputCache CacheProfile=”cache10”%>)

    <system.web>

       <caching>

            <outputCacheSettings>

              <outputCacheProfiles>

                <add name="cache10" duration="10" varyByParam="none" />

              </outputCacheProfiles>

            </outputCacheSettings>

          </caching>

    </system.web>

     

    数据库缓存依赖:

    数据库缓存依赖

    实现步骤:

        下面就让我们看一下如何实现数据库缓存依赖功能:

    第一步: 修改web.config,让项目启用SqlCacheDependency 。

    将下列代码加入web.config的<system.web>节:       

    <?xml version="1.0"?>

    <configuration>

     <appSettings/>

    <connectionStrings>

    <add name="connectionstring" connectionString="data source=127.0.0.1;initial catalog=Test;user id=sa;password="  providerName="System.Data.SqlClient" />

    </connectionStrings>

    <system.web>

    <caching>

    <sqlCacheDependency enabled="true" pollTime="6000">

     <databases>

      <add name="Test" connectionStringName=" connectionstring " />

    </databases>

    </sqlCacheDependency>         

    </caching> 

    </system.web>

    </configuration>

     

     

    这里的connectionStringName指定了在<connectionStrings>中添加的某一个连接字符串。name则是为该SqlCacheDependency起的名字,这个名字将在第3步中用到。
    SqlCacheDependency类会自动完成对此配置节信息的读取以建立和数据库之间的联系。

     

    注意:

    在<databases>节的<add name=" Test" connectionStringName=" connectionstring" />中的name属性值必须和第三步的Page_Load代码中System.Web.Caching.SqlCacheDependency("Test", "依赖的表名称(这里使用Contact)"); 中的第一个参数(数据库名称)相一致。

     

    第二步:执行下述命令,为 数据库启用缓存依赖。

    如果要配置SqlCacheDependency,则需要以命令行的方式执行。

    aspnet_regsql.exe工具位于Windows\\Microsoft.NET\\Framework\\[版本]文件夹中。

    aspnet_regsql -C "data source=127.0.0.1;initial catalog= Test;user id=sa;password=master" -ed -et -t " Contact "

    参数-C后面的字符串是连接字符串(请替换成自己所需要的值),

    参数-t后面的字符串是数据表的名字。

     

    命令执行后,在指定的数据库中会多出一个AspNet_SqlCacheTablesForChangeNotification表。

     

    第三步:在代码中使用缓存,并为其设置SqlCacheDependency依赖:

    public static void SetCache(string CacheKey, object objObject, System.Web.Caching.CacheDependency dep)
    
    {
    
        System.Web.Caching.Cache objCache = HttpRuntime.Cache;
    
        objCache.Insert(
    
            CacheKey,
    
            objObject,
    
            dep,
    
            System.Web.Caching.Cache.NoAbsoluteExpiration,//从不过期
    
            System.Web.Caching.Cache.NoSlidingExpiration,//禁用可调过期
    
            System.Web.Caching.CacheItemPriority.Default,
    
            null);
    
    }
    
    protected void Page_Load(object sender, EventArgs e)
    
    {
    
        string CacheKey = "cachetest";
    
        object objModel = GetCache(CacheKey);//从缓存中获取
    
        if (objModel == null)//缓存里没有
    
        {
    
            objModel = GetData();//把当前时间进行缓存
    
            if (objModel != null)
    
            {
    
                //依赖数据库Test中的Contact表变化 来更新缓存
    
                System.Web.Caching.SqlCacheDependency dep = newSystem.Web.Caching.SqlCacheDependency("Test", " Contact ");
    
                SetCache(CacheKey, objModel, dep);//写入缓存
    
            }
    
        }
    
                   
    
        rpdata.DataSource = (DataSet)objModel;
    
        rpdata.DataBind();
    
    }
    
     
    

      

    8、IIS网站发布-自定义domain

    将网站部署到IIS的方式演示

    修改C:\Windows\System32\Drivers\etc下的hosts文件

    将127.0.0.1  www.stud.com

    修改IIS站点的绑定

     

     

    9、简单示例读写xml文件

    ①可以用XmlSerializer序列化
    ②XMLDocument
    写:
      XmlDocument xml= new XmlDocument();
                XmlDeclaration xdec=  xml.CreateXmlDeclaration("1.0", "utf-8", "yes");
                xml.AppendChild(xdec);
                XmlElement rootElement = xml.CreateElement("root");
                xml.AppendChild(rootElement);
                XmlElement subElement = xml.CreateElement("subEle");
                subElement.SetAttribute("name", "kk");
                rootElement.AppendChild(subElement);
                xml.Save(@"c:\a.xml");
    读:   XmlDocument doc = new XmlDocument();
                doc.Load("");
                XmlElement ele= doc.DocumentElement;//获取根节点
               XmlNodeList list=  ele.ChildNodes;//获取所有子节点
       foreach (XmlNode item in list)
                {
                    if (item.NodeType==XmlNodeType.Element)//判断是元素节点才操作
                    {
    
                    }
                }
    搜索指定节点,进行修改操作
    doc.GetElementsByTagName("name");//获取指定名字的全部节点
    ③XDocument
    写:
        XDocument xml = new XDocument();
                XDeclaration dec = new XDeclaration("1.0","utf-8",”no”);
                xml.Add(dec);
                XElement ele = new XElement("root");
                xml.Add(ele);
                ele.SetElementValue("", "");//也可以这样创建
                xml.Save("c:\\x.xml");
    读:
      XDocument doc = XDocument.Load("");//加载指定的xml
                XElement root= doc.Root;//获取根节点
                root.Elements("name");//获取根节点下的name名字的节点
    搜索指定节点,进行修改操作:
      XDocument doc = XDocument.Load("");//加载指定的xml
                XElement root = doc.Root;//获取根节点
                root.Descendants().Where (c=>c.Attribute("").ToString()=="");   // 按文档顺序返回此文档或元素的子代节点集合。
    ④Xpath  路径表达式
    /      --从根目录开始
    //aaa   --找到整篇文档的aaa所有节点
    //*     --找到所有任何元素
    //aaa/bbb --找到整篇文档的aaa所有节点中的bbb节点,bbb节点属于aaa的才能找到
    /aaa/bbb/*  *代表所属节点的所有
    /*/*/*/bbb
    /aaa/bbb[0]   aaa节点下的第一个bbb
    /aaa/bbb[last()]   aaa节点下的最后一个bbb
    //@id   --@代表属性  ,选择所有元素中所具有id属性的属性,不是查找元素
    //BBB[@id]  --在有id属性的BBB元素
    用C#获取:XMLDocument document=new XMLDocument();
    Document.load(“aa.xml”);
    Document.SelectNodes(“/Users/user[id=3]”);//就是用这种语法,更新也是setattribute

     

    10、有潜在的危险Request.Form值

    在页面的指令集中使用VaildataRequest=false就行,不过有些低版本不行,还得在配置文件中配置<httpRuntime requestValidationMode="2.0"/>

     

    11、配置跳转到同一的错误页面,MVC中的配置一样

    <system.web>

        <customErrors mode="On" defaultRedirect="Error"></customErrors>

      </system.web>

    部署网站的时候mode一定为false或者remote。defaultRedirect是跳转的页面

    12、<configSections>    //一定紧贴configuration这个节点,否则会报错

    13、重要:优化:在指定的bin目录下的指定程序集中查找,这样就不用在每个程序集中一一查找:

    下面表示直接在CRM.Test 的dll中查找。

       <object id="myAnimal" type="TestSpring.Dog,CRM.Test" singleton="false">

    转载于:https://www.cnblogs.com/entclark/p/9098101.html

    展开全文
  • ajax webconfig配置

    2010-04-22 19:05:34
    ajax webconfig配置ajax webconfig配置ajax webconfig配置
  • WebConfig配置文件详解

    2018-01-04 09:21:27
    <!--注意: 除了手动编辑此文件以外,您还可以使用 Web ...--Webconfig文件是一个xml文件,configuration是xml文件的根节点,由于xml文件的根节点只能有一个,所以Webconfig的所有配置都是在这个节点内进行的。-->

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,859
精华内容 1,543
关键字:

webconfig