用GET发送数据则用REQUEST.QUERYSTRING[''ID'']接收

一、request.aspx

二、request.aspx.cs


三运行效果:

以下是数据发送的途径http://localhost:1693/aspnet/request.aspx?__VIEWSTATE=%2FwEPDwUKMTYzNzQ1NDcxN2RkM6FDpEGEGWC3nc84%2FugaXC4kNns%3D&name=%E6%97%A0%E5%A3%B0%E5%B2%81%E6%9C%88&age=23&Button1=%E6%8F%90%E4%BA%A4&__EVENTVALIDATION=%2FwEWBALi0oPyDAL7uPQdAtCCr6oGAoznisYGxvbqZicMzlX%2BV0mim64FvnurygY%3D

四以下是以POST传送和以REQUEST.FORM["ID"]接收

requestpost.aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="requestpost.aspx.cs" Inherits="requestpost" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>requestpost</title>
</head>
<body>
      <form id="form2" runat="server" method="post">
    <div>
        <asp:Label ID="Label3" runat="server" Text="请输入你的姓名:"></asp:Label>
        <asp:TextBox ID="name2" runat="server"></asp:TextBox><br/>
        <asp:Label ID="Label4" runat="server" Text="请输入你的年龄:"></asp:Label>
        <asp:TextBox ID="age2" runat="server"></asp:TextBox>&nbsp;<br />
        <br/>
        &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
        &nbsp;
        <asp:Button ID="Button2" runat="server" Text="提交post发送" OnClick="Button2_Click" />
    </div>
    </form>
</body>

</html>

requestpost.aspx.cs

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class requestpost : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

}
    protected void Button2_Click(object sender, EventArgs e)
    {
        string name2 = Request.Form["name2"];
        string age2 = Request.Form["age2"];
        Response.Write("你的姓名是:" + name2 + "你的年龄是:" + age2);
        Response.Write("你使用的是" + Request.RequestType + "方式传送数据");
    }
}

五、运行效果

以上看到地址栏并没有长长的字符串

表单提交中,ASP.NET的Get和Post方式的区别归纳如下几点:

1. get是从服务器上获取数据,post是向服务器传送数据。

2. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。

3. 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。

4. get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB。

5. get安全性非常低,post安全性较高。但是执行效率却比Post方法好。

建议:

1、get方式的安全性较Post方式要差些,包含机密信息的话,建议用Post数据提交方式;

2、在做数据查询时,建议用Get方式;而在做数据添加、修改或删除时,建议用Post方式。

第3种,同时接受get和post 方法传送数据的代码写法:

A 写法

  1. string id3 = Request.Params["name3"];
  2. string website3 = Request.Params["website3"];
  3. Response.Write(id3 + "< br>" + website3);

B 写法

  1. string id4 = Request["name4"];
  2. string website4 = Request["website4"];
  3. Response.Write(id4 + "< br>" + website4);

c# 中get和post的方法的更多相关文章

  1. (转)ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务 的解决方法

    早上同事用PL/SQL连接虚拟机中的Oracle数据库,发现又报了"ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务"错误,帮其解决后,发现很多人遇到过这样的问 ...

  2. 解析Jquery取得iframe中元素的几种方法

    iframe在复合文档中经常用到,利用jquery操作iframe可以大幅提高效率,这里收集一些基本操作,需要的朋友可以参考下   DOM方法:父窗口操作IFRAME:window.frames[&q ...

  3. 在html中添加script脚本的方法和注意事项

    在html中添加script脚本有两种方法,直接将javascript代码添加到html中与添加外部js文件,这两种方法都比较常用,大家可以根据自己需要自由选择 在html中添加<script& ...

  4. MVC中使用Entity Framework 基于方法的查询学习笔记 (二)

    解释,不解释: 紧接上文,我们在Visual Studio2012中看到系统为我们自动创建的视图(View)文件Index.cshtml中,开头有如下这句话: @model IEnumerable&l ...

  5. ORA-01652:无法通过128(在表空间temp中)扩展temp段 解决方法

    ORA-01652:无法通过128(在表空间temp中)扩展temp段 解决方法 (2016-10-21 16:49:53)   今天在做一个查询的时候,报了一个"ORA-01652无法通过 ...

  6. 转载:WinForm中播放声音的三种方法

    转载:WinForm中播放声音的三种方法 金刚 winForm 播放声音 本文是转载的文章.原文出处:http://blog.csdn.net/jijunwu/article/details/4753 ...

  7. win7中VS2010中安装CSS3.0问题解决方法

    win7中VS2010中安装CSS3.0问题解决方法   在安装Standards Update for VS2010 SP1后,VS2010中没有CSS3.0问题,以下是我的解决方法 1.首先去官网 ...

  8. OSG中找到特定节点的方法

    OSG中找到特定节点的方法 转自:http://38288890.blog.163.com/blog/static/19612845320072721549504/ 为了在OSG中找到需要的节点并对节 ...

  9. 正则表达式中的exec和match方法的区别

    正则表达式中的exec和match方法的区别 字符串的正则方法有:match().replace().search().split() 正则对象的方法有:exec().test() 1.match m ...

  10. 在C#中如何使用资源的方法

    总结一个在C#中如何使用资源的方法:一:使用本地文件1.将本地要加入的资源文本(视频,图片,文本或其它)加入项目,比如我们现在加入一个up.bmp的图片到项目中,且放在文件夹Resources下面,2 ...

随机推荐

  1. C语言(3)

    C语言(3)----数据输入 输入时的关键字为scanf.如我们要从键盘上输入一个数,放在变量a里面,则可以写成scanf("%d",&a); "&&qu ...

  2. 五、点数器《苹果iOS实例编程入门教程》

    该app为应用的功能为一个简单的数数程序 现版本 SDK 8.4 Xcode 运行Xcode 选择 Create a new Xcode project ->Single View Applic ...

  3. JSP 页面缓存以及清除缓存

    一.概述 缓存的思想可以应用在软件分层的各个层面.它是一种内部机制,对外界而言,是不可感知的. 数据库本身有缓存,持久层也可以缓存.(比如:hibernate,还分1级和2级缓存) 业务层也可以有缓存 ...

  4. border-radius 圆角半径

    CSS3属性之一:border-radius 语法: border-radius : none | <length>{1,4} [ / <length>{1,4} ]? 相关属 ...

  5. SQL中的with as

    一.WITH AS的含义 WITH AS短语,也叫做子查询部分(subquery factoring),可以让你做很多事情,定义一个SQL片断,该SQL片断会被整个SQL语句所用到.有的时候,是为了让 ...

  6. Linux_用户/用户组

    一.用户添加 1.  账号添加 [root@hadoop09-linux tmp]# useradd eRrsr 这时/etc/passwd文件中会追加该用户项,并且在/home文件夹下自动生成该属于 ...

  7. Hibernate常用增删改查方法

    /** * @param obj * @return * 添加数据 */ public Serializable saveObject(Object obj){ return this.getHibe ...

  8. css文本溢出省略号

    .ellip{ display: block; width:200px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; ...

  9. javascript模拟jQuery封装委托事件,兼容IE

    var $ = function(id){ var dom = document.getElementById(id); return { on:function(eventType,element, ...

  10. html background 背景颜色美化 类似毛玻璃

    制作高大上背景颜色 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...