




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、常用第三方工具与控件1本章目标会使用验证码控件制作验证码会使用FreeTextBox控件录入富文本能使用CodeSmith生成实体类代码2第三方控件微软提供的控件不够丰富偶尔效果不理想(比如日历)第三方控件简单方便大部分可以免费下载有使用说明拿来主义 3验证码百度注册的页面为什么需要验证码?防止不法分子通过穷举方式破解密码、盗取钱财。防止竞争对手通过大量注册,破坏网站的稳定。验证码4验证方式基于Cookie的验证Js脚本验证,美观方便,无刷新Cookie在客户端,不够安全,且编码复杂基于Session的验证相对安全,仍需要手写编码基于控件的验证使用方便,很少或无须手写编码比较安全5验证码控件演
2、示Webvalidates的使用方式添加控件到工具栏将控件拖放到注册页面编写注册验证代码演示示例:使用验证码的注册页面 6验证代码protected void Page_Load(.)if(!this.IsPostBack) snCode.Create( );protected void btnSubmit_Click(.)if(! snCode.CheckSN(this.txtCode.Text) . .snCode.Create( );else. .生成验证码,注意只在首次加载时使用 比较验证码是否正确,返回布尔型结果 7小结简述将第三方控件显示在工具栏的步骤。验证码控件Webvalida
3、tes的哪个方法可以生成一个新的验证码?Web开发中,哪些地方需要验证码?8HTML的录入第三波网络书店的图书目录中,要显示下面一部分内容:实际上,该部分的内容是第部分 CLR基础 第1章 CLR的执行模型就是说,我们在录入目录信息时,需要编写HTML代码才能达到所需的效果。能不能像Word那样编辑带格式的内容呢?9在线文本编辑器在线文本编辑器解决了HTML格式录入的问题常用的在线文本编辑器RichTextBox,最早的富文本控件,富文本控件因它而得名;FCKeditor,是国外一个开源的项目;CuteEditor,功能最为完善,但它自身也是相当庞大的;eWebEditor,国产软件,有中国特
4、色;FreeTextBox,简单方便,国内使用相当普遍。10FreeTextBox演示FreeTextBox的使用将FreeTextBox添加入工具栏将FreeTextBox控件放入图书的编辑和添加模板中设置相关ObjectDataSource参数查看运行效果演示示例:图书目录的编辑录入 11编码回顾回顾网上书店开发过程模型层把数据库的表变成类数据层增、查、改、删(CRUT)业务层调用数据层进行增查改删能否简化减少重复编码,提高开发效率?使用工具生成代码 重复进行相似的工作 12代码生成工具常见代码生成工具Code Smith国外最著名的商业代码生成器。 宣扬快捷开发,支持多种语言13代码生成
5、工具常见代码生成工具Code SmithMyGeneratoe:国外著名免费代码生成器,开源软件。Codematic国内人气最旺的免费代码生成器, 基于C#和SQL Server,方便快捷,可自动生成整站代码 14代码生成工具常见代码生成工具Code SmithMyGeneratoe:国外著名免费代码生成器,开源软件。CodematicMacrObject国内一款不错的商业代码生成器,基于Nuva (女娲) 语言。支持多套模板一次生成代码 能够保存数据架构和配置信息 应用最广泛15初识CodeSmith演示生成Book实体类打开CodeSmith Explorer找到DatabaseSchem
6、a中的模板businessobject.cst双击该模板,选择数据表(需要添加数据连接)单击“Generate”(生成)查看生成的代码,并与我们使用的实体类相比较演示示例:实体类的生成 实体类生成了,但却不是我们想要的格式 16CodeSmith的模板模板是代码生成的基础以.cst为后缀名可以使用C#语言编写代码CodeSmith的模板由以下三部分组成静态内容:固定不变的内容(实体类中的“public”等);能够自动生成的内容(当前时间等);动态内容:需要用户指定的内容(参数)。17CodeSmith模板入门声明模板属性定义参数 编写模板使用的语言确认生成文件类型该参数需输入 18CodeSm
7、ith模板入门基本语法脚本标签public string DrawLine(int num)string str=;for(int i=0;i=num;i+)str+=*;return str;可使用与C#编码一样的方式编写代码19CodeSmith模板入门基本语法脚本标签代码标签编写第一个模板,查看生产效果演示:第一个模板 =0;i-) %标签:可以放置任意数量的代码在其中,但并不能直接输出到模版中。标签:在模版中输出一个字符串20CodeSmith模板进阶生成实体类的需求类名:如果表名后面有“s”(如Books),则类名=表名-“s”;否则类名=表名。字段:首字母小写,并依据相应数据库中的
8、类型设置字段类型和默认值。外键:外键字段名=外键对象名+“Id”using System;using System.Collections.Generic;using System.Text;namespace MyBookShop.ModelsSerializable()public class Bookprivate int id; private string title = String.Empty; private string author = String.Empty;private Publisher publisher; private Category category;
9、21数据库访问组件组件的引用组件的使用ForeignKeyColumns:所有外键列的集合NonForeignKeyColumns:所有非外键列的集合NonKeyColumns:所有既不是主键又不是外键的列的集合TableSchema/表的类型ColumnSchema/列的类型22编写仅包含字段的实体类模板编写模板设置参数为数据表添加模板代码和方法public string GetColumnName(ColumnSchema column)if(column.IsForeignKeyMember)return column.Name.Substring(0, column.Name.Leng
10、th - 2);return column.Name; 针对外键,去掉末尾的“Id”演示:MyField 设置参数为表格类型23文件名控制生成的文件名我们的实体类都是以类名.cs作为文件名,要达到这个目的,可以通过重载Get方法实现代码public override string Get( )return GetClassName(this.SourceTable) + .cs;如果不重写该方法,则保存时的文件名以模板名称作为默认文件名, 以TargetLanguage指定的类型确定后缀名24综合示例最终的实体类模板在生成字段的基础上,添加属性的生成。重载Get方法,使默认保存的文件名为“类名.cs”。演示:M
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高校科研教学实践一体化管理
- 市场总体情况概述表
- 2025年巴中职业技术学院单招职业技能考试题库完整版
- 2025年北京从业资格货运资格考试题库及答案解析
- 2025年哈尔滨货运从业资格证模拟考试保过版
- 农业行业农产品溯源与智慧农业方案
- 古典文学名著选读之红楼梦人物与情节解读教学教案
- 项目资金筹措情况表(研发型项目)
- 《新安全生产法》课件
- 公司单位汽车租赁合同
- 贵州省2025年初中学业水平考试数学模拟训练卷(五)
- 《大学生劳动教育》课件第一章 新时代大学生的劳动价值观
- 2022年贵州省公务员录用考试《行测》真题及答案解析
- 2024年烟草知识考试题库
- 2024年“法律进企业”活动实施方案
- 小儿高热惊厥课件
- 投资学基础(第2版)教案
- 突发事件及自救互救学习通超星期末考试答案章节答案2024年
- 青少年无人机课程:第一课-马上起飞
- 《静脉治疗护理技术操作规范》测试题考试试题及答案
- 芙蓉镇足球协会成立申请书
评论
0/150
提交评论