zoukankan      html  css  js  c++  java
  • 3、ASP.NET页面剖析

    1、导致ASP.NET应用程序重启的原因
      1、达到了动态页面编译的最大限度。该限度可以在web.config文件中进行配置
      2、Web应用程序的物理路径被更改,或者其中的任何目录被重命名
      3、应用程序根目录下的global.asax、machine.config、web.onfig,或Bin目录(包括其子目录)中的文件被更改
      4、代码安全访问策略文件被更改(如果该文件存在)
      5、某个内容目录中的太多文件发生了更改(如果这些文件是在被请请求时实时生成的,一般会发生这种情况)
      6、用于控制ASP.NET工作线程的重启/关闭设置被更改。如果不使用Windows Server 203 的IIS 6.0 进程模式,这些设置会从machine.config 中获取。如果完全利用IIS 6.0 ,那么更改IIS管理器的【应用程序池】节点便会重启相应的程序
    2、页面处理的指令
      @Assembly:用于将程序集链接到当前页面或用户控件上
      @Control:用于定义控件特有的属性(Attribute),这些属性会控制控件编译器的行为
      @Implements:用于指示当前页面或者当前用户控件实现指定的.NET Framework 接口
      @Import:用于显示的将命名空间导入到页面或者用户控件中
      @Master:用于指示将当前页面标识为ASP.NET 模板页。ASP.NET 1.x不支持该指令
      @MasterType:当通过Master属性(property)访问ASP.NET 模板页时,它会为该模板页提供一种创建强类型引用的方式。ASP.NET 1.x不支持该指令
      @OutputCache:用于控制页面或者用户控件的输出缓存策略
      @Page:用于定义页面特有的属性,以便于控制处理该页面的页面编辑器和语言解析器的行为
      @PreviousPageType:提供了一种获取之前页面强类型的引用的方式,通过PreviousPage属性便可以对之前的页面进行访问
      @Reference:用于将页面或者用户控件链接到当前页面或者用户控件上
      @Register:用于在页面或控件中创建自定义的标签。新的标签(包括前缀和名称)会将命名控件和用户自定义的控件关联起来
    3、@Page指令
      只能在.aspx页面中使用,且最多只能包含一个
      用于页面编译的@Page指令属性:
        ClassName:用于指定页面被动态请求时动态生成的类的名称,它必须是不带命名空间信息的类名
        CodeFile:用于指示当前页面代码隐藏类的路径。该类文件必须被部署到Web服务器上。ASP.NET 1.x不支持该属性
        CodeBehind:Visual Studio.NET 2003使用的属性,用于指示当前页面代码隐藏类的路径。该类文件会被编译成可部署的程序集(对2.0或更高版本的ASP.NET来说,应该使用CodeFile属性)
        CodeFileBaseClass:用于指定页的基类及其关联的代码隐藏类的基类名称。该属性是可选的,但是如果使用了CodeFile属性,则必须指定该属性,ASP.NET 1.x不支持该属性
        CompilationMode:用于指示当前页面是否在运行时编译。ASP.NET 1.x不支持该属性
        CompilerOptions:用于编译当前页的一系列编译器命令行参数
        Debug:一个布尔值,用于指示是否应该使用调试符号编译该项
        Explicit:一个布尔值,用于确定在编译该页时是否将Visual Basic 的Option Explicit模式设置为On,Option Explicit 会强制编程人员显式声明所有变量。如果当前页所选的语言不是Visual Basic .NET,该属性会被忽略
        Inherits:用于定义当前页面要继承的基类,它可以为从Page类派生的任何类
        Language:用于在编译时提示内联代码块(<% . . . %>)和<script>区段中代码所使用的语言。支持的语言包括Visual Basic .NET、C#、JScript .NET和J#。如果没有另外指定,则使用默认设置Visual Basic .NET
        LinePragmas:用于指定运行时是否应在源代码中生存杂注(line pragma)
        MasterPageFile:用于指定当前页面的模板页。ASP.NET 1.x不支持该属性
        Src:用于指示包含实现Inherits指定的基类的源文件路径。Visual Studio和其他快速应用程序开发设计器(RAD)不适用该属性
        Strict:一个布尔值,用于确定在编译当前页时,是否将Visual Basic的Option Strict设为On 。 若开启Option Strict ,则只允许类型安全的转换,禁止可能导致数据丢失的隐形转换(在这种情况下,其行为和C#一致),如果当前页所选用的语言不是 Visual Basic.NET , 该属性将被忽略
        Trace:一个布尔值,用于指示是否开启跟踪功能。如果启用跟踪功能,额外的信息会被追加到页面的输出中,默认值为false
        TraceMode:当启用跟踪功能时,提示当前页面跟踪消息的方式。有效值为SortByTime 和 SortByCategory。默认为SortByTime
        WarningLevel:提示编译器的警告级别。当达到指定的级别,编译过程将终止,有效值为0~4
      用于页面行为的@Page指令属性:
        AspCompat:布尔值类型的属性,若设为true,则允许当前页面在单线程单元(STA)线程上执行,该设置使页能够调用COM+ 1.0组件 以及用Visual Basic 6.0开发的需要访问非托管ASP内置对象的组件
        Async:如果设置为true,则生成的页面类将派生于IHttpAsyncHandler,而不是使IHttphandler将某些内建的非同步功能添加到页中。ASP.NET 1.x不支持该属性
        AsyncTimeOut:用于定义处理异步任务时使用的超时时间(单位为秒),默认为45秒。ASP.NET 1.x不支持该属性
        AutoEventWireup:布尔类型的属性,用于指示是否启用页面的事件。默认为true。使用Visual Studio.NET开发的网页会将该属性设置为false,页面的事件会被分别绑定到处理程序上
        Buffer:布尔类型的属性,用于确定是否启用HTTP响应缓冲,默认值为true
        Description:用于提供当前页面的文本描述。ASP.NET解析器会忽略该属性,而只用作文档说明
        EnableEventValidation:布尔类型的属性,用于决定是否使当前页面生成一隐含字段,为支持事件数据验证的输入字段做缓冲,默认值为true。ASP.NET 1.x不支持该属性
        EnableSessionState:用于定义当前页面处理会话数据的方式。如果设置为true,则可以读/写会话状态。如果设为false,则应用程序无法使用会话数据。最后如果设为ReadOnly,则只能读取会话数据,而不能更改
        EnableViewState:布尔类型的属性,用于指示是否在页面请求见保持视图状态。视图状态是页面调用的上下文,用于保存往返过程之间当前页面状态值的集合
        EnableTheming,布尔类型的属性,用于指示当前页是否对嵌入的控件应用主题,默认值为true,ASP.NET 1.x不支持该属性
        EnableViewStateMac:布尔类型的属性,用于指示ASP.NET是否为特定的计算机生成身份验证码,并将其追加到页的视图状态中(除Base64编码)。属性名中的Mac代表"计算机身份验证检查"。若将该属性设置为true,则在回发时,ASP.NET会检查视图状态的身份验证码,以确保其在客户端上没有被篡改
        ErrorPage:定义一个目标URL,后者指向一个提示页,在页面发生未处理的异常时,用户会被重定向到该位置
        MaintainS成rollPositionO你Postback:用于指示是否在回发之后恢复客户端浏览器的滚动条的位置,默认为false
        SmartNavigation:布尔类型的属性,用于指示当前页是否支持Internet Explorer 5 或者更高版本的智能导航功能。智能导航使得页面刷新后不会失去滚得位置和元素焦点
        Theme,StyleSheetTheme:用于指示为当前页选择的主题(或样式表主题)。ASP.NET 1.x不支持该属性
        Transaction:用于指示当前页是否支持或需要事务。有效值为Disabled、NotSupported、Supported、Required和RequiresNew。默认情况下,事务支持是被禁用的
        ValidateRequest:布尔类型的属性,用于指示是否执行请求验证。如果设置为true,ASP.NET将根据一硬编码的潜在危险值列表对所有输入的数据进行检查。该功能有助于降低页面的跨站点脚本攻击风险。默认值为true。ASP.NET 1.x不支持该属性
        ViewStateEncryptionMode:用于指示视图加密的方式。有三个可能的值:Auto、Always和Never。默认为Auto,这表只有在控件要求时才加密视图状态。注意,每次请求的页面处理都加密视图数据,会对服务器造成一定的额外开销
      用于控制输出的@Page指令属性: 
        ClientTarget:用于指示ASP.NET服务器控件呈现其内容时所要面向的浏览器
        CodePage:用于指示相应的代码页值。只有在使用一个代码页创建该页(而不是使用运行该页的Web服务器的默认代码页)时,才设置该属性。在这种情况下,将属性设置为开发计算机的代码页。代码页是一个符号集合,包括数字、标点和其他符号。不同的语言代码页会有区别
        ContentType:用于将响应内容的类型定义为标准的MIME类型。支持任何有效的HTTP内容类型字符串
        Culture:用于指示当前页的区域性设置。区域性信息包括书写与排序系统、日历和货币格式。该属性值必须为区域性相关的名称,即它必须包含语言和国家信息。例如。en-us就是一个有效值,而en本身怎会被认为是国家不相关的
        LCID:32位的值,用于定义页的区域标识符。默认情况下,ASP.NET会使用Web服务器的区域设置
        ResponseEncoding:用于指示当前页面的编码方案名称。该值用于设置内容类型HTTP标头的CharSet属性。在内部,ASP.NET会将所有字符串按Unicode处理
        Title:用于指示当前页的标题。对于一般的页面作用不大,因为可以使用HTML的<title>标签,该属性的定义是为了帮助开发者在内容页不能访问<title>的情况下(这取决模板页的结构设计),为其设置标题   
        UICulture:用于指定资源管理器(Response Manager)使用的默认区域信息名称,以便在运行时查找区域特定的资源
    4、@Assembly指令 

  • 相关阅读:
    [DB] 数据库的连接
    JS leetcode 翻转字符串里的单词 题解分析
    JS leetcode 拥有最多糖果的孩子 题解分析,六一快乐。
    JS leetcode 搜索插入位置 题解分析
    JS leetcode 杨辉三角Ⅱ 题解分析
    JS leetcode 寻找数组的中心索引 题解分析
    JS leetcode 移除元素 题解分析
    JS leetcode 最大连续1的个数 题解分析
    JS leetcode 两数之和 II
    JS leetcode 反转字符串 题解分析
  • 原文地址:https://www.cnblogs.com/changweihua/p/2155019.html
Copyright © 2011-2022 走看看