• ASP.NET内置对象


    一、页面跳转的方法

    1. 超链接 、 hyperlink
    2. Response.redirect(‘URL string’)
    3. Server.transfer(“URL string”)
    4. PostBackurl PostBackUrl 属性用于获取或设置当 ImageButton 控件被点击时要回传的目标页面的 URL。

    在这里插入图片描述
    transfer:只能在本站点URL跳转,不能跳转到其它网站
    postbackurl:凡是具有IButtonControl接口的控件都具有postbackurl属性,用未定义提交那个页面的地址(可以本站,也可以外站) 这种方法的跳转,目标页可以调用原页面的中控件的值

    Server.Transfer不能直接重定向到ashx,否则会报错”执行子请求出错“
    在这里插入图片描述
    2 Transfer跳转URL地址不会改变,而用Redirect方式URL则会显示跳转后的URL地址
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    二、Cookie
    实现单值cookie的设置
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    三、ASP.NET 设置元素的CSS属性
    1、添加一个css规则
    control.style.Add(“CSS名称”,“CSS值”)
    Text Box1.style.Add(“width”,“120px”)
    2、添加Class规则
    Control.CssClass=“XXX”

    在这里插入图片描述
    在这里插入图片描述
    <%%> 在服务端执行

    cs可以调用aspx控件,aspx中也可以访问cs中定义的字段、函数,还是可以编写复杂的c#代码,for等所有的C#代码都可以写在aspx中(不推荐)
    <%=UserName%> <%=SyaHello();%> <% if(UserName==“aa”) {userName=“bb”;}%>
    <%@ %> 用来导入命名空间,主要用于再web页面定义page、引入控件、组件、设置Cache,引入命名空间等
    调用字段的时候使用<%=UserName%> ,不要丢掉了 = ,相当于在当前位置调用Response.Write(UserName)
    使用的函数、代码相当于在这个位置调用函数、执行代码。注意aspx中调用cs的成员级别必须是protected或者public,不能是private的
    1:在.aspx页面,<% %>标签相当于在.cs页面的代码,也就是说你在.cs文件里面怎样写,就可以在.aspx文件里面的<% %>标签里面怎样写。书写后台代码。
    2:在.aspx页面,<%= %>标签可以调用你的后台的变量或者方法等,不过被调用的方法必须是public的。等同于 <% Response.Write () %> 用于输出一个值,计算=后面的表达式,并将结果输出。
    3:<%:%>将:号后面的内容编码输出,实际<%=Server.HtmlEncode()%>

    注意:ASP.NET 控件有个属性 ClientID,控件在客户端的ID,控件在服务端的ID不一定等于客户端HTML中的ID,比如在ListView等控件的模块中。因此如果要在客户端通过Javascript DOM Jquery的 getElementById,KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲id")来操作控件的话最好不要…(‘#<%=txt1.ClientID%>’)
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    Session

    会话状态
    每个用户(浏览器实例)一份
    当用户访问Web服务器,则分配一个sessionID(存储到客户端PC),会话结束或超时,自动释放,默认20分钟,在webconfig中设置。
    SessionID:24个字符组成的随机字符串
    如果PC端,cookie禁用了,那么session也会失效
    1、创建session
    Session[“KeyName”]=“xxxx”;
    Session.Add(“KeyName”,ObjectValue), 存储类型没有限制,存储大小只受内存限制
    2、修改session
    Session[“KeyName”]=“xxxx” 存在KeyName——>修改 不存在——>创建
    3、获取一个Session
    Session[“xxx”]是一个对象,
    Session[“xxx”]…GetType() 获得类型
    ①:存储字符串
    String str=Session[“ss”].ToString()
    ②:存储数值
    int iss=(Int)Session[“ss”] 显示转换
    ③:如果存储一个控件
    TextBox txt=(TextBox)Session[“xxxx”]
    4、清除Session
    ①清除某一个Session
    Session.Remove(“KeyName”)
    ②清除所有session
    Session.RemoveAll()
    ③清除当前会话
    Session.Abandon()
    5、遍历Session
    foreach ( string item in Session.Keys)
    {
    string ss = Session[item].ToString();
    }

    Application

    1. 服务器内存中存储的
      2、独立于用户请求的公共数据
      3、只要应用程序不停止,就一直存在,直到有显示的删除或更改
      4、没有存储大小限制
      5、没有存储类型限制
      缺乏自我管理机制,数据不会自动释放
      创建一个Application
      Application[“KeyName”]=ObjectValue
      Application.Add(“KeyName”,ObjectValue) 如果keyname,已经存在,再用Application.Add 创建或修改只会生成keyName 副本,我们通常在Application_Start的时候去初始化一些数据,在以后的访问中可以迅速访问和检索。
      获取一个Application Application.Get(“KeyName”)
      ①:存储字符串
      String str=Application[“ss”].ToString()
      ②:存储数值
      int iss=(Int)Application[“ss”] 显示转换
      ③:如果存储一个控件
      TextBox txt=(TextBox)Application[“xxxx”]

    修改Application
    Application.lock()
    Application[“KeyName”]=xxxx 更新Application对象的值 Application[“KeyName”].Set(“键值”,Value)
    Application.unlock()
    因为Application是在整个应用程序中,所有用户公用的。当进行修改的时候,很可能另一个用户也在修改。所以修改前后必须要加锁和解锁
    清除Application
    Application.lock()
    Application.Remove(“KeyName”);
    Application.unlock()
    清除所有Application
    Application.lock()
    Application.clear() 或者 Application.RemoveAll()
    Application.unlock()
    遍历Application
    foreach (string item in Application.AllKeys)
    {
    //-----
    }

    在这里插入图片描述

    OnClick 、ONServerClick 事件
    1、Html控件 onClick (客户端) onServerClick(服务端)
    2、web控件 onClientClick (客户端) onClick(服务端)
    总之先执行客户端 再执行服务端 如果客户端 返回 return false 则服务器就不执行了
    Session 的变量存储再服务器上,ViewState 存储在当前页面中,是页面级的
    Session占用服务器资源,ViewState 则不占用
    Session不加重html负载,ViewState 加重html负载
    session 对整个application 有效,而ViewState相当于某个页面有效

  • 相关阅读:
    使用vue-cli搭建spa项目
    【springboot项目详解】springboot项目整合-注册功能模块开发
    编程基础-代码规范
    小程序实现word等文件上传
    python读写查询mysql数据库
    贪心算法☞磁带最优存储问题
    nodejs使用jsonwebtoken/jwt-decode生成jwt和解密token的方法
    图新地球:如何添加视频到地图上,点击直接播放,汇报更顺畅
    掘地三尺搞定 Redis 与 MySQL 数据一致性问题
    如何与ChatGPT愉快地聊天
  • 原文地址:https://blog.csdn.net/u013400314/article/details/126459697