• asp.net服务器页面处理过程


    一、静态页面、动态页面区别

    静态页面是服务端直接从硬盘里面读取然后发回去,动态页面就要创建这个页面类的对象,调用对象的方法,方法里面什么就发回什么。浏览器请求asp.net页面实际是请求asp.net页面类的PR方法。

    二、请求流程

    iis自己是没法处理动态页面的,必须交给asp.net框架来处理,iis就会判断页面的后缀(iis的处理程序映射里面处理),如果是静态的,它就自己处理。动态的文件,交给aspnet_isapi.dll处理,然后将请求交给asp.net框架中的ISAPIRuntime类处理。(此为经典模式,即通过后缀将动态页面交给.net框架处理,iis7.0开始,有集成模式,将.net框架集成到了iis里面)

    三、做一个简单的模版

    静态页First.html (样式略)

    <table>
    
    <tr>
    
    <th>班级Id</th>
    
    <th>班级名称</th>
    
    </tr>
    
    {@trs}
    
    </table>
    View Code

    一般处理程序页面List.ashx

    public void RrocessRequest(httpContext context)
    
    {
    
        context.Response.ContentType="text/html";
    
        DataTable dt=DbHelperSQL.GetDataTable("select top 10 * from Classes");//获取过程略
    
        StringBuilder sbTrs=new StringBuilder();
    
        //找到列表模版的物理路径
    
        string strPhyPath=context.Server.MapPath("First.html");
    
        //读取列表模版页面内容(html)
    
        string strFile=PageHelper.ReadFile(strPhyPath);
    
        //遍历表格行,生成html表格行
    
        for(int i=0;i<dt.Rows.Count;i++)
    
        {
    
           //省略
    
        }
    
        strFile=strFile.Replace("{@trs}",sbTrs.ToString());
    
        context.Response.Write(strFile);
    
    }
    View Code

    类PageHelper

    //读取文件字符串
    
    public static string ReadFile(string strPath)
    
    {
    
      return System.IO.File.ReadAllText(strPath);
    
    }
    View Code

    四、asp.net框架简易流程

    -------------------------------------------------------------------------------------------------------------------------------------------

    软谋在线教育,最适合大学生、上班族的在线软件培训,主要教授asp.net动态网站制作,yy教育房间远程实时授课,每节课录制成高清视频课后分享,老师白天八小时全职在线辅导,不懂就问。加qq群:138800420 即可免费试听。

  • 相关阅读:
    mybatis 之 占位符#{} 和 ${}
    mybatis的#{}占位符和${}拼接符的区别
    MyBatis 批量操作、集合遍历-foreach
    Oracle查看和修改连接数
    linux下启动关闭oracle
    kafka的OffsetOutOfRangeError
    redis批量删除key
    mysql连接慢,修改配置文件
    [linux] ping服务器脚本
    oracle游标
  • 原文地址:https://www.cnblogs.com/ruanmou001/p/3590618.html
Copyright © 2020-2023  润新知