Asp.Net_Get跟Post
1. Get(即使用QueryString显式传递)
方式:在url后面跟参数。
特点:简单、方便。
缺点:字符串长度最长为255个字符;数据泄漏在url中。
适用数据:简单、少量、关键的数据。
适用范围:传递给自己、传递给另一个目标页面;常用于2个页面间传递数据。
用法:例如:url后加?UserID=…,跳转到目标页面,目标页面在伺服端可用Request.QueryString["InputText"]获取其指定参数值。
取值:Response.Redirect(s_url);
2. Post
方式:通用的方式。利用form提交。
特点:最常用的方法。常用技巧是把隐秘的数据存在隐藏域中由form提交。
适用数据:大量数据,包括文件上传。
适用范围:同Get方法
用法:在客户端form指定action目标后submit、在asp.net的伺服端中使用server.Transfer(url)提交;在伺服端中用Request.Form["FormFieldID"]获取。
例:get,post分别取值
public object string GetValueFromPage(string inputName,int type)
{
HttpContext rq = HttpContext.Current;
object TempValue = "";
if (type==1)
{
if (rq.Request.Form[inputName] != null)
{
TempValue = rq.Request.Form[inputName];
}
}
else if (type==0)
{
if (rq.Request.QueryString[inputName] != null)
{
TempValue = rq.Request.QueryString[inputName];
}
}
return TempValue;
}
-----其他几种传值的优缺点
cookie
方式:将数据存在客户端的经典方法。
缺点:安全性低、受客户端设置限制、一个站点仅存20个cookie,每个容量4096字节。
Session
方式:将用户数据存储在伺服端。
特点:asp.net中可以设置session的存储方式、位置、SessionID的保存是否依赖cookie。
可以直接存储对象。
缺点:asp.net中有失效的隐患
Cache
方式:将用户数据存储在伺服端数据缓存中。
特点:可以大大提高效率。 可以直接存储对象。
Appliction
方式: 将数据存储于此,相当于全局变量。
特点:可以直接存储对象。整个站点的共享数据
ViewState
方式:asp.net特有机制,用来恢复页面状态。
特点:将页面各控件及其所存数据序列化存在name为_ViewState的隐藏域中。
缺点:存在HTML中,安全性较低。可以设置加密和验证,但数据量会大增、效率有影响。
Static
方式: 将数据存于静态变量中。
特点:利于提高效率。
缺点:若用不好会致使用户或页面间数据紊乱,造成极大的隐患。建议只赋值一次,绝对禁止为单个用户而更改此值。
Asp.Net_Get跟Post的更多相关文章
- ASP.NET Core 之 Identity 入门(一)
前言 在 ASP.NET Core 中,仍然沿用了 ASP.NET里面的 Identity 组件库,负责对用户的身份进行认证,总体来说的话,没有MVC 5 里面那么复杂,因为在MVC 5里面引入了OW ...
- Asp.Net Mvc 使用WebUploader 多图片上传
来博客园有一个月了,哈哈.在这里学到了很多东西.今天也来试着分享一下学到的东西.希望能和大家做朋友共同进步. 最近由于项目需要上传多张图片,对于我这只菜鸟来说,以前上传图片都是直接拖得控件啊,而且还是 ...
- ASP.NET Core 中的那些认证中间件及一些重要知识点
前言 在读这篇文章之间,建议先看一下我的 ASP.NET Core 之 Identity 入门系列(一,二,三)奠定一下基础. 有关于 Authentication 的知识太广,所以本篇介绍几个在 A ...
- ASP.NET Core应用的错误处理[3]:ExceptionHandlerMiddleware中间件如何呈现“定制化错误页面”
DeveloperExceptionPageMiddleware中间件利用呈现出来的错误页面实现抛出异常和当前请求的详细信息以辅助开发人员更好地进行纠错诊断工作,而ExceptionHandlerMi ...
- ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第二章:利用模型类创建视图、控制器和数据库
在这一章中,我们将直接进入项目,并且为产品和分类添加一些基本的模型类.我们将在Entity Framework的代码优先模式下,利用这些模型类创建一个数据库.我们还将学习如何在代码中创建数据库上下文类 ...
- ASP.NET_各个币种之间的汇率转换(实时)使用Yahoo汇率。
近期开发支付平台的时候有运用到各国的实时汇率之间的转换问题,于是在往上找了很多相关资料,以下就是一些参考网址: 1.提供API接口的网站:https://www.showapi.com:这个网站有提供 ...
- ASP.NET Core MVC/WebAPi 模型绑定探索
前言 相信一直关注我的园友都知道,我写的博文都没有特别枯燥理论性的东西,主要是当每开启一门新的技术之旅时,刚开始就直接去看底层实现原理,第一会感觉索然无味,第二也不明白到底为何要这样做,所以只有当你用 ...
- ASP.NET Core应用的错误处理[2]:DeveloperExceptionPageMiddleware中间件如何呈现“开发者异常页面”
在<ASP.NET Core应用的错误处理[1]:三种呈现错误页面的方式>中,我们通过几个简单的实例演示了如何呈现一个错误页面,这些错误页面的呈现分别由三个对应的中间件来完成,接下来我们将 ...
- Asp.Net WebApi核心对象解析(下篇)
在接着写Asp.Net WebApi核心对象解析(下篇)之前,还是一如既往的扯扯淡,元旦刚过,整个人还是处于晕的状态,一大早就来处理系统BUG,简直是坑爹(好在没让我元旦赶过来该BUG),队友挖的坑, ...
随机推荐
- Visual Basic 6.0(VB6.0)详细安装过程
注:大家如果没有VB6.0的安装文件,可自行百度一下下载,一般文件大小在200M左右的均为完整版的软件,可以使用. 特别提示:安装此软件的时候最好退出360杀毒软件(包括360安全卫士,电脑管家等,如 ...
- 全面认识一下.NET 4.0的缓存功能 (转)
转自:http://www.cnblogs.com/hjf1223/archive/2010/07/16/net_4_caching.html 很多关于.NET 4.0新特性的介绍,缓存功能的增强肯定 ...
- seq 序列
seq 序列用法: seq [option]...last seq [option]...first last seq [option]...first increment last 例如:seq 5 ...
- Python实例--12306的抢票功能
基础知识学习 目标: 通过python程序实现自动登录下单功能 知识点: Selenium + 云打码 + Python 学习链接: 1. Python学习--Selenium模块 2. Python ...
- hadoop集群为分布式搭建
1.准备Linux环境设置虚拟机网络 1.0点击VMware快捷方式,右键打开文件所在位置 -> 双击vmnetcfg.exe -> VMnet1 host-only ->修改 ...
- 【Alpha go】Day 2!
[Alpha go]Day 2! Part 0 · 简要目录 Part 1 · 项目燃尽图 Part 2 · 项目进展 Part 3 · 站立式会议照片 Part 4 · Scrum 摘要 Part ...
- PAT乙级真题及训练题 1025. 反转链表 (25)
PAT乙级真题及训练题 1025. 反转链表 (25) 感觉几个世纪没打代码了,真是坏习惯,调了两小时把反转链表调出来了,心情舒畅. 这道题的步骤 数据输入,数组纪录下一结点及储存值 创建链表并储存上 ...
- Nginx防hashdos模块使用帮助
经过上周一周朋友们帮忙测试和bug fix,nginx_http_hashdos_module已经达到可以线上使用的水平,下面是使用记录. 下载 #wget --no-check-certificat ...
- APP性能测试,网易Emmagee工具
APK地址:https://github.com/NetEase/Emmagee/releases/download/V1.2.1/Emmagee-1.2.1.apk 开源代码github地址:htt ...
- 根据拼音首字母进行过滤的combobox
keywords: 拼音 首字母 过滤 在combobox中输入汉字拼音的首字母时,下面列出对应的可选项,就像下面这样 1. 首先在数据库中需要设计一个表,专门用来存放药物及对应的拼音首字母,这样当用 ...