视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
ASP.NET笔记之页面跳转、调试、form表单、viewstate、cookie的使用说明
2020-11-27 22:41:09 责编:小采
文档


1、页面跳转:

(1 服务器传输

  server.Transer(//www.gxlcms.com);在定向到新页面后,还是会显示原来的URL,浏览器返回不会退回到原页面,历史记录也不会记录。

  应用于完整的控制传输,例如安装向导。

(2 超链接

(3 浏览器重定向 Redirect ,速度快,没有发送到服务器

(4 跨页发送 PostBackUrl=“//www.gxlcms.com” />

          IsCrossPagePostBack用来判断是否为跨页提交

          IsPostBack 是用来检查目前网页是否为第一次加载,当使用者第一次浏览这个网页时Page.IsPostBack 会传回False,加载完传回True

2.调试

(1   修改.aspx 页面的顶部的Page指令,添加 Trace=“true” 在浏览器中操作并查看,(对应状态代码),测试完记得将true改回false!!!!

(2   插入跟踪日志  Trace.warn("111")  Trace.warn("cATEGORY"," 11",excp);    
代码如下:
try { int a = 0; int b = 5 / a; }
catch (System.Exception ex) { Trace.Warn("zzl", "calling b=5/a", ex); }

浏览器中将会以红色鲜艳字体显示:

 (3   web.config 应用程序跟踪  trace 

(4 断点调试

 3、form表单:get 和post

    get是通过url传值,post是通过将表单值隐藏到http报文中不显示

    get通过的数据有限,post才能传递大数据量

   但是post会有浏览器提示重新提交表单的问题,get则没有。

 4、禁用viewstate:就读不到上次给客户端的值

          

自增:addTest.ashx
代码如下:
public void ProcessRequest (HttpContext context) {
         context.Response.ContentType = "text/plain";
         string ispostback = context.Request["ispostBack"];
         string value = "0";
         if (ispostback == "true") {
              value=context.Request["num_01"];
              int valueInint = int.Parse(value);
              valueInint++;
              value = valueInint.ToString();
         }

         string filepath = context.Server.MapPath("addTest.htm");
         string content = System.IO.File.ReadAllText(filepath);
         content = content.Replace("@value",value);
         context.Response.Write(content);
     }

html
代码如下:
<form action="addTest.ashx" method="post">
        <input type="hidden" name="ispostBack" value="true" />
        <input type="hidden" name="num_01" value="@value" />
    <div>@value
    </div>
        <input type="submit" name="" value="addOne" />
    </form>

 5、cookie

    服务器返回数据除了一般html数据,还有cookie,浏览器会把cookie值更新到本地浏览器,可能会消耗太多资源

     //www.gxlcms.com  所以网站的图片服务器会和主站域名不同,减少cookie流量传输,以优化网站速率: http://www.myblogs.com/daomul.gif

 6、每次请求都会new一个新的IhttpHandler接口的类“变量1”的实例进行处理

   用完就GC掉,不会保持上次的值

   用static “保存”,所有访问者都会访问的实例
代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class vivideo_test_变量1 : System.Web.UI.Page
{
    private int i = 0;
    private static int j = 0;
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        //i++;
        //Label1.Text = i.ToString();

        j++;
        Label1.Text = j.ToString();
    }
}

 

下载本文
显示全文
专题