什么是WebForm

WebForm诞生于2002年

WebForm是微软开发的一款产品,它将用户的请求和响应都封装为控件。

WebForm负责封装用于用户端显示的数据。

在EasyJWeb中,WebForm是一个非常重要,也是使用最为频繁的对象,他充当了在视图及程序之间传输、处理数据的媒介。

常用方法

1、WebForm中包含了视图页面中传输进来的数据,可以通过Request.Form.Get("键名")的方式来读取这些数据。由于提交过来的form表单只有只读属性,说以只能使用Get方法获取表单中的值,而不能添加或修改表单里面的值。

2.如果需要更多的用法,请参考EasyJWeb的教程;

WebForm控件

HTML控件
asp .net将HTML控件当做普通字符串渲染到浏览器端(不做任何处理)
asp .net控件
HTML控件
与asp .net控件相比优点: ①操作方便②会对虚拟路径 id→ClientID进行处理

WebForm控件的运行

点击ASP按钮会先执行Page_Load事件,然后才会去执行相应的Button_Click()事件。

WebForm的一个关键点就是PostBack,无论你点击哪一个ASP.NET服务器按钮都会回发到服务器端。而Html控件除非点击submit控件其余是不会回发的。

但是也可以设定点击的控件是否需要回发的服务器端。如果设置ASP.NET的控件AutoPostBack="false"那么点击这个按钮是不会回发到服务器端的,同样不会造成页面刷新。

protected void Page_Load(object sender,EventArgs e)

{

if(!Page.ISPostBack)

{

//TODO:界面初始化工作,如果不在这里面那么每次点击按钮回发的时候,都会先把这里面的方法执行一次,可能会破坏提交过来表单数据准确性和数据完整性。

}

}

WebForm优点

1.编写简便,所看见的页面就是最后运行的界面,提高了开发效率。

2.支持事件模型开发。有丰富的服务器组件。   //ASP.NET服务器控件和javascript都事件模型,事件源将事件发送给一个或多个监听器,监听器只要接收到事件,监听器将处理这些事件。

3.控件丰富。

WebForm缺点

1.封装太强,很多底层的东西初学者不是很明白。

2.自定义控制不灵活。

3.ViewState处理。

这里要讲出ViewState的使用中对于开发过程中肯定是非常的方面可以像Session一样的在客户端存放一些零时数据和变量,因为他耗费的服务器资源较少(与Application和Session相比)。默认情况下.NET系统默认对状态数据进行维护,并且适用于任意浏览器。

但是在出现他之后随之引起的问题,首先性能问题,用户显示页和发送页时的速度仍然可能减慢。设备限制。移动设备可能没有足够的内存容量来存储大量的视图状态数据。潜在的安全风险。视图状态存储在页上的一个或多个隐藏域中。虽然视图状态以哈希格式存储数据,但它可以被篡改。

使用WebForm一些小技巧

labTitle.Text = value.ToString().Trim().Replace(System.Environment.NewLine,"<br />");//让输入框中的换行转换成为一个网页显示的回车符号。

Response.Redirect(Request.Url.ToString()); //表示通知浏览器需要刷新本页

以流形式下载文件首先需要把Response.Clear();//清除Response中的数据,如果不清除Response里面的遗留数据可能会导致下载的文件存在乱码。

WebForm前台JS调用后台代码

1.后台要被调用的函数ss()
public string ss()
{
return("a");
}
2.前台js调用示例:
<script language=javascript>
var a = "<%=ss()%>";
alert(a);
</script>

C# WebForm相关推荐

  1. Winform与Webform中的对话框

    参考MSDN DialogResult result = MessageBox.Show("见过打劫的没?", "打.打.打劫", MessageBoxButt ...

  2. 不用asp.net MVC,用WebForm照样可以实现MVC(请看最后一句话)

    在<避开WebForm天坑,拥抱ASP.Net MVC吧>这篇博客中我讲到了ASP.net WebForm由于一些先天的"诱导犯罪"的缺陷,现在用ASP.net MVC ...

  3. 关于在WebForm页面使用Ajax

    关于ajax我相信做B/S开发的程序员都不陌生,在做电子商务网站,还是其他的B/S架构的系统,ajax使用的都特别频繁.那么ajax是什么呢? AJAX:"Asynchronous Java ...

  4. WebForm中使用MVC

    http://www.cnblogs.com/encoding/articles/3556046.html ********************************************** ...

  5. [NET] 如何从 Winform 移植到 Webform [自己搞定HTTP协议]

    Winform 如何移植到 WebForm. 这个问题其实也就是要找一个好的方案,最大程度的复用现有的资源. 同时,WebForm的话,不一定要走ASPNET这条路,可以自己搞定HTTP协议的. 下图 ...

  6. 基于WebForm的Front Controller模式框架

    经过一段时间努力终于把WebForm下的Front Contoller模式初型完成:虽然框架和MonoRail是基于同一种模式,但有最大的区别就是该框架的Controller是依赖于接口完全脱离Asp ...

  7. webform空间在html输出数据库,如何:在 ASP 上的数据网格中导出数据。 Microsoft Excel 的 NET WebForm...

    启动 Visual Studio .NET. 在"文件"菜单上,指向"新建",然后单击"项目". 在 "项目类型" 窗格 ...

  8. webform登录操作中正则表达式运用

    关于正则表达式的运用,估计很多人都会觉得这很麻烦.确实很麻烦,太多表达式我也记不住,很多都是临时需要用的时候再去查,有点小学生读小说的架势,不认识的字再去翻字典. 正则表达式严格来说对于程序的功能实现 ...

  9. asp.net webform 与asp.net mvc 混合开发项目总结

    公司里的一个web项目 运行速度比较慢(原来是asp.net webform  建立的时候是通过新建网站 不是web项目) 这个项目最早是VS2003 做的时候asp.net也不是很熟悉 订单登记的页 ...

  10. WebForm实现增删改查

    上文,我们使用pb和c#WinForm使用分别实现了增删改查,本文,我们C#WebForm技术来实现一下.首先,说明一点,WinForm和WebForm基本是一样,代码基本雷同,就是使用的控件不一样, ...

最新文章

  1. Oracle存储过程(增、删、改)写法
  2. Acwing第 1 场周赛【完结】
  3. leetcode 507. 完美数(Java版)
  4. c# 服务器性能监控,C#服务器性能监控之WMI的代码示例详解
  5. python random从集合中随机选择元素
  6. com 组件调用不起来_Spring Cloud Alibaba训练营 —— 分布式服务调用
  7. ubuntu中查找文件后高亮_vim查找替换及取消高亮
  8. python acme_Python Hashlib模块 · Seacme Huang
  9. 专访勒索组织“范本”:Thedarkoverlord 喜欢并享受辽阔的狩猎场
  10. 2020年苏大计算机考研872真题及解析
  11. 饮用水中如何去除硝酸盐 溴化物 铬 等有害物质
  12. Android 4.0 人脸,Android 4.0.3!原道N90人脸识别试用
  13. 计算机社团动员大会发言稿,计算机科学与技术学院召开“2020年双创实践线上动员大会”...
  14. 记录一次线上Mysql数据库迁移方案制定与实施
  15. 生成自己的数字证书使网站支持HTTPS
  16. nodejs学习笔记--Unexpected end of JSON input while parsing near ‘...“解决方法
  17. 十大跨平台移动应用开发工具
  18. 作为师兄,给电子信息相关毕业生的一些简历建议
  19. CSS代码的含义及使用
  20. vue3的学习(二)

热门文章

  1. 一个int类型到底占多少个字节
  2. 图:美国首颗“嗅碳”卫星发射失败坠海
  3. 内网穿透(详细且免费)部署
  4. 机器人导航——路径跟踪
  5. @Scheduled使用及讲解
  6. 最新快速提升网站关键词排名方法,附案例
  7. 如何划分测试集和训练集
  8. GraphQL和RESTful的区别
  9. matlab减小数据方差,最小方差控制
  10. proto-buf模型格式测试一例