c# asp.net 获取客户端表单的数据(15)

简介:
  在web程序中,经常会使用在一个网页使用其他网页提交的数据信息,这里可以使用Request内置对象来完成,来获取用户提交的信息,根据客户端提交数 据方式的不同,Request对象分别使用Form和QueryString集合属性来获取数据。下面是两种集合获取方式的不同点:通过Form获取数据 时在form属性中简单的添加action=“跳转的网页地址”,<form ID="id号 " runat=“sever” action=“要跳转的网页URL”> </form>,该传参方式是隐式的,不容易暴露;另一种方式是通过get方法提交表单数据,或页面导向通过 “URL?Parameter=Value”格式传递参数值时,即使用Request对象QueryString属性获取传递过来的信息,这个传参方式一 般不建议使用,因在URL之后,所以容易在浏览器暴露参数,容易遭受黑客的攻击,再者是URL的字节数有限,即传递的参数有限,所以不建议使用 QueryString。
这里需要建立两个web程序页,第一个Default.aspx页中运用各种控件,第二个是在get-form.aspx的后台代码中在页面加载的 时候获得Default.aspx页中,用户提交的信息数据。
Default.aspx的html代码:

?
1
<%@ Page Language= "C#"  AutoEventWireup= "true"  CodeBehind= "Default.aspx.cs"  Inherits= "form._Default"  %><br><br><!DOCTYPE html PUBLIC  "-//W3C//DTD XHTML 1.0 Transitional//EN"  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" ><br><br><html xmlns= "http://www.w3.org/1999/xhtml"  ><br><head runat= "server" ><br>    <title>无标题页</title><br></head><br><body><br>    <form id= "Form1"  action= "get_form.aspx"  method= "post" ><br>    <div style= "text-align:center" ><br>    填写用户信息<br>    <hr  style= "size:50%" /><br>    </div><br>    <div style= "text-align:left" ><br>    用户名:<input name= "user_name"  type= "text"  /><br /><br>    密码:  <br>        <input name= "Password1"  type= "password"  /><br /><br>    确认密码:<input name= "Password2"  type= "password"  /><br /><br>        性别:<input name= "女"  type= "radio"  value= "女"   />女<input id= "Radio1"  type= "radio"  value= "男"  name= "sex"  />男<br /><br>        上传照片:<input id= "File1"  type= "file"   name= "picture" /><br /><br>        <br>        <br /><br>         <br>        <input  type= "submit"  value= "提交"  />       <br>        <input type= "reset"  value= "重置"  /></div><br>    </form><br></body><br></html><br><br> get -form.aspx后台代码:<br><pre  class = "brush:csharp" > using  System;<br> using  System.Collections;<br> using  System.Configuration;<br> using  System.Data;<br> using  System.Linq;<br> using  System.Web;<br> using  System.Web.Security;<br> using  System.Web.UI;<br> using  System.Web.UI.HtmlControls;<br> using  System.Web.UI.WebControls;<br> using  System.Web.UI.WebControls.WebParts;<br> using  System.Xml.Linq;<br><br> namespace  form<br>{<br>     public  partial  class  get_form : System.Web.UI.Page<br>    {<br>         protected  void  Page_Load( object  sender, EventArgs e)<br>        {<br>            Response.Write( "利用 Response对象获取客户端数据" );<br>            Response.Write( "<hr/>" );<br>             string [] names = Request.Form.AllKeys;//定义name保存表单中的所有键即元素名称<br>             for  ( int  i = 0; i < names.Length; i++)<br>            {<br>                 string [] values = Request.Form.GetValues(i);//定义values保存表单中所有键的键值<br>                 for  ( int  j = 0; j < values.Length; j++)<br>                    Response.Write(names[i]+ "=" +values[j]+ "<br/>" );<br>            }//通过循环表单中的键和键值,用 Response.Write输出<br>        }<br>    }<br>}<br><br></pre><br>原始效果图:
填完信息提交后:
用form属性将用户的信息数据提交给另一个网页,可以很好的避免一些问题,并且可以再另外的网页中通过循环把信息输出,不涉及控件中的id号,感 觉比较好用。


本文转自shenzhoulong  51CTO博客,原文链接:http://blog.51cto.com/shenzhoulong/313138,如需转载请自行联系原作者
相关文章
|
2月前
|
设计模式 IDE API
C# 一分钟浅谈:GraphQL 客户端调用
本文介绍了如何在C#中调用GraphQL API,涵盖基本步骤、常见问题及解决方案。首先,通过安装`GraphQL.Client`库并创建客户端实例,连接到GraphQL服务器。接着,展示了如何编写查询和突变,以及处理查询语法错误、变量类型不匹配等常见问题。最后,通过具体案例(如管理用户和订单)演示了如何在实际项目中应用这些技术,帮助开发者更高效地利用GraphQL。
73 38
C# 一分钟浅谈:GraphQL 客户端调用
|
2月前
|
设计模式 API 数据处理
C# 一分钟浅谈:GraphQL 客户端调用
本文介绍了如何在C#中使用`GraphQL.Client`库调用GraphQL API,涵盖基本查询、变量使用、批量请求等内容,并详细说明了常见问题及其解决方法,帮助开发者高效利用GraphQL的强大功能。
101 57
|
4天前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
26 11
|
6天前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
34 10
|
2月前
|
开发框架 .NET C#
在 ASP.NET Core 中创建 gRPC 客户端和服务器
本文介绍了如何使用 gRPC 框架搭建一个简单的“Hello World”示例。首先创建了一个名为 GrpcDemo 的解决方案,其中包含一个 gRPC 服务端项目 GrpcServer 和一个客户端项目 GrpcClient。服务端通过定义 `greeter.proto` 文件中的服务和消息类型,实现了一个简单的问候服务 `GreeterService`。客户端则通过 gRPC 客户端库连接到服务端并调用其 `SayHello` 方法,展示了 gRPC 在 C# 中的基本使用方法。
45 5
在 ASP.NET Core 中创建 gRPC 客户端和服务器
|
3月前
|
SQL XML 关系型数据库
入门指南:利用NHibernate简化.NET应用程序的数据访问
【10月更文挑战第13天】NHibernate是一个面向.NET的开源对象关系映射(ORM)工具,它提供了从数据库表到应用程序中的对象之间的映射。通过使用NHibernate,开发者可以专注于业务逻辑和领域模型的设计,而无需直接编写复杂的SQL语句来处理数据持久化问题。NHibernate支持多种数据库,并且具有高度的灵活性和可扩展性。
52 2
|
3月前
|
存储 消息中间件 NoSQL
Redis 入门 - C#.NET Core客户端库六种选择
Redis 入门 - C#.NET Core客户端库六种选择
76 8
|
3月前
|
SQL 缓存 分布式计算
C#如何处理上亿级数据的查询效率
C#如何处理上亿级数据的查询效率
47 1
|
4月前
|
存储 C# 开发者
枚举与结构体的应用:C#中的数据组织艺术
在C#编程中,枚举(`enum`)和结构体(`struct`)是非常重要的数据类型。枚举用于定义命名常量集合,提高代码可读性;结构体则封装相关数据字段,适合小型数据集。本文从基本概念入手,探讨它们的使用技巧、常见问题及解决方案,帮助开发者更好地利用这些特性构建健壮的应用程序。
56 8
|
3月前
|
中间件 数据库连接 API
C#数据分表核心代码
C#数据分表核心代码
47 0