为了账号安全,请及时绑定邮箱和手机立即绑定

请问一下关于Asp.net中Request[],Request.Form.Get()的区别?

请问一下关于Asp.net中Request[],Request.Form.Get()的区别?

C
阿晨1998 2022-05-06 11:07:20
Request[],Request.Form.Get()的区别??asp.net2.0中有几种方法获取本页提交的值?Request[id],Request.QueryString[id],REquest.Form[id]这是我以前知道的。今天看书看到一个Requst.Form.Get(id)。这些都可以获取本页控件(如 TextBox)的值吗?有什么区别?特别是Requst.Form.Get(id)与那三个的区别????事情是这样的:今天我看书学习做一个XML的通讯录,有一部分是建立XmlText对象,需要用本页上的控件(通讯录信息)的Text,书上是XmlText telephoneText = xdoc.CreateTextNode(Request.Form.Get("TextBoxTelephone"));---------1我以为跟这样是相同的:XmlText telephoneText = xdoc.CreateTextNode(Request["TextBoxTelephone"]);------------------2但结果为空,就是这些数据没有填入XML.看来没有获取到。没办法我就直接XmlText telephoneText = xdoc.CreateTextNode(TextBoxTelephone.Text);------------------------3◆◆我想问一下为什么第2办法不行?与第1种有何区别?◆◆另外我想问一下:本页内的提交,应该是用Request等什么的还是直接用“ 控件ID.Text” ?
查看完整描述

1 回答

?
慕姐8265434

TA贡献1813条经验 获得超2个赞

都可以获取本页提交的数据。但QueryString仅用于Get方式。另外三种可用于Post方式。所以页面控件的值(若页面在Form中才行)采用Post方式,可以用三种方式获取。另外Request[]的方式可以获取Cookie、Form、QueryString、ServerVariables类型的值,即所有通过Request提交的都可以。
Request.Form返回的是NameValueCollection类型对象,该类型对象有Get方法。所以Request.Form[]和Request.Form.Get()是相同的。
所以,Request[]是无论何时都可以的方法,但必须将控件写在前台的Form标记中。至于你的为什么不行,我不知道,大概是别的原因。

查看完整回答
反对 回复 2022-05-10
  • 1 回答
  • 0 关注
  • 232 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号