首页 后端开发 C#.Net教程 ASP.NET基础知识(二)

ASP.NET基础知识(二)

Dec 20, 2016 pm 01:37 PM
asp.net

RadioButton控件会在客户端渲染成,和服务端控件一样,也可以通过GroupName属性尽心分组。

Button控件会在客户端渲染成

LinkButton控件会在客户端渲染成

ImageButton控件是一个可以设置ImageUrl的Button,它会在客户端渲染成
相同点 :都可以把OnClientClick属性设置为"return confirm('确定要删除吗?')";

Panel控件会在客户端渲染成DIV,如果设置了它的GroupingText属性,则会渲染成

这样设置
,也就是GroupBox的效果。

Hyperlink控件会在客户端渲染成标记。
可以设置属性NavigateUrl=""和Target="",若设置ImageUrl属性,则会渲染成
.

FileUpload控件会在客户端渲染成.
一般上传文件的代码这样写
if(FileUpload1.hasFile())
{
string uploadPath = Server.MapPath("~/upload/");
FileUpload1.SaveAs(uploadPath + FileUpload1.FileName);
}

总的来说,控件共分为三种:
1)HTML控件
2)ASP.NET服务端控件
3)有runat="server"的HTML控件

验证控件
1)RequireFieldValidator:必填字段,可进行服务端的非空校验,常用属性有:ErrorMessage, ControlToValidate , InitialValue . 在服务端验证时可以这样写if(this.IsValide){…}
2)RangeValidator:判断值是否在给定的最大值(MaximumValue)和最小值(MinimumValue)之间,可比较的数据类型有string, int , currency.
3)CompareValidator:用于比较两个值的关系是否满足要求的或者指定类型的数据。比较操作符有:<,>,=,!= .常用属性:ValueToCompare :与哪个值比较,ControlToCompare :与哪一个控件进行比较。
4)RegularExpressionValidator:用于验证数据满足的正则表达式。常用属性:ValidationExpression :定义正则表达式。
5)CustomValidator:用于特殊情况的自定义验证。
6)注意 :(1)几乎所有的验证控件都得在客户端和服务端进行校验。
(2)给验证控件进行分组:ValidationGroup
(3)是否触发校验事件:CauseValidation:false,表示不触发验证事件
(4)修改验证控件是否占位:Display设置成Dynamic或者Static.

数据绑定
1)例如:<%#Eval ("Id")%>
2)Repeater数据控件用于绑定数据的遍历显示,当然,我们也可以用foreach语句手写。
3)Repeater控件的其它模板
(1)设置隔行的不同风格,也就是偶数行的风格。
(2)头部尾部的模板,分别显示在数据的前面和后面,比如可防 止

或者
    等。
    (3),两项数据之间的分隔符。

    数据库中只存放图片的路径,ResolveClientUrl("~/images/ + url");

    放在模板中的控件无法直接在后台c#代码中操作,得先通过ID找到控件,如:e.Item.FindControl("txtName");

    Repeater控件一般只用来展示数据,而ListView控件用来实现增删改产操作更方便一些。

    Eval()是单向绑定,用于读取数据库中的数据;Bind()是双向绑定,即能把数据库中的值读到页面上,也能把用户的值传到数据库中。

    ListView控件的注意事项:
    (1)自动生成的样式要提炼到css样式中,不要做成内联式的;
    (2)里面一般没必要用控件展示只读数据,直接输出就可以。
    (3)中必须有一个id为itemPlaceHolder的服务端控件。将表头自动生成的英文字段改成汉语,没用的ID要删除,没必要展示出来。

    在ItemDataBound事件中应注意:
    (1)判断数据行的类型 e.Item.ItemType == ListViewItemType.DataRow
    (2) 取得对应的RowView ListViewDataItem lvDataItem = (ListViewDataItem)e.Item; DataRowView rowView = (DataRowView)lvDataItem.DataItem;
    (3)在用FindControl时应注意 AlternatingItemTemplate问题。

    ListView和GridView的区别
    (1)GridView只能渲染成Table
    (2)ListView既能渲染成Table,也能渲染成

    • DropDownList控件绑定SelectedValue属性,如:SelectedValue="<%#Eval('txtName')%>"

      如果在页面前端不涉及增删改查等交互信息的纯展示页面,可以禁用ViewState,有两种方法:
      (1)页面整体禁用ViewState:在顶部标签内加EnabelViewState="false"
      (2)对指定控件禁用ViewState:在该控件的属性上添加EnabelViewState="false"

      网站性能调优
      (1)缓存Cache是网站性能调优的第一个手段;
      (2)索引Index是数据库性能调优的第一个手段;

      设置页面缓存的方法:在页面头部区域中设置<%@ OutputCache Duration="20" VaryByParam="none"(这项是可变的,可设置为参数:id;num;age等)%>

      数据缓存的设置方法,针对ObjectDataSource设置属性,
      (1)EnableCaching="True"
      (2)CacheDuration="20"

      写在后边:鲁迅先生有句话"哪里有天才?我是把别人喝咖啡的功夫都用在工作和学习上的!"非常赞同,勤能补拙是良训。好了,今天就到这里吧!


    本站声明
    本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

    热AI工具

    Undresser.AI Undress

    Undresser.AI Undress

    人工智能驱动的应用程序,用于创建逼真的裸体照片

    AI Clothes Remover

    AI Clothes Remover

    用于从照片中去除衣服的在线人工智能工具。

    Undress AI Tool

    Undress AI Tool

    免费脱衣服图片

    Clothoff.io

    Clothoff.io

    AI脱衣机

    Video Face Swap

    Video Face Swap

    使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

    热门文章

    <🎜>:泡泡胶模拟器无穷大 - 如何获取和使用皇家钥匙
    3 周前 By 尊渡假赌尊渡假赌尊渡假赌
    北端:融合系统,解释
    3 周前 By 尊渡假赌尊渡假赌尊渡假赌
    Mandragora:巫婆树的耳语 - 如何解锁抓钩
    3 周前 By 尊渡假赌尊渡假赌尊渡假赌

    热工具

    记事本++7.3.1

    记事本++7.3.1

    好用且免费的代码编辑器

    SublimeText3汉化版

    SublimeText3汉化版

    中文版,非常好用

    禅工作室 13.0.1

    禅工作室 13.0.1

    功能强大的PHP集成开发环境

    Dreamweaver CS6

    Dreamweaver CS6

    视觉化网页开发工具

    SublimeText3 Mac版

    SublimeText3 Mac版

    神级代码编辑软件(SublimeText3)

    热门话题

    Java教程
    1665
    14
    CakePHP 教程
    1424
    52
    Laravel 教程
    1322
    25
    PHP教程
    1270
    29
    C# 教程
    1250
    24
    c#.net的持续相关性:查看当前用法 c#.net的持续相关性:查看当前用法 Apr 16, 2025 am 12:07 AM

    C#.NET依然重要,因为它提供了强大的工具和库,支持多种应用开发。1)C#结合.NET框架,使开发高效便捷。2)C#的类型安全和垃圾回收机制增强了其优势。3).NET提供跨平台运行环境和丰富的API,提升了开发灵活性。

    从网络到桌面:C#.NET的多功能性 从网络到桌面:C#.NET的多功能性 Apr 15, 2025 am 12:07 AM

    C#.NETisversatileforbothwebanddesktopdevelopment.1)Forweb,useASP.NETfordynamicapplications.2)Fordesktop,employWindowsFormsorWPFforrichinterfaces.3)UseXamarinforcross-platformdevelopment,enablingcodesharingacrossWindows,macOS,Linux,andmobiledevices.

    C#作为多功能.NET语言:应用程序和示例 C#作为多功能.NET语言:应用程序和示例 Apr 26, 2025 am 12:26 AM

    C#在企业级应用、游戏开发、移动应用和Web开发中均有广泛应用。1)在企业级应用中,C#常用于ASP.NETCore开发WebAPI。2)在游戏开发中,C#与Unity引擎结合,实现角色控制等功能。3)C#支持多态性和异步编程,提高代码灵活性和应用性能。

    c#.net适合您吗?评估其适用性 c#.net适合您吗?评估其适用性 Apr 13, 2025 am 12:03 AM

    c#.netissutableforenterprise-levelapplications withemofrosoftecosystemdueToItsStrongTyping,richlibraries,androbustperraries,androbustperformance.however,itmaynotbeidealfoross-platement forment forment forment forvepentment offependment dovelopment toveloperment toveloperment whenrawspeedsportor whenrawspeedseedpolitical politionalitable,

    C#.NET与未来:适应新技术 C#.NET与未来:适应新技术 Apr 14, 2025 am 12:06 AM

    C#和.NET通过不断的更新和优化,适应了新兴技术的需求。1)C#9.0和.NET5引入了记录类型和性能优化。2).NETCore增强了云原生和容器化支持。3)ASP.NETCore与现代Web技术集成。4)ML.NET支持机器学习和人工智能。5)异步编程和最佳实践提升了性能。

    .NET中的C#代码:探索编程过程 .NET中的C#代码:探索编程过程 Apr 12, 2025 am 12:02 AM

    C#在.NET中的编程过程包括以下步骤:1)编写C#代码,2)编译为中间语言(IL),3)由.NET运行时(CLR)执行。C#在.NET中的优势在于其现代化语法、强大的类型系统和与.NET框架的紧密集成,适用于从桌面应用到Web服务的各种开发场景。

    将C#.NET应用程序部署到Azure/AWS:逐步指南 将C#.NET应用程序部署到Azure/AWS:逐步指南 Apr 23, 2025 am 12:06 AM

    如何将C#.NET应用部署到Azure或AWS?答案是使用AzureAppService和AWSElasticBeanstalk。1.在Azure上,使用AzureAppService和AzurePipelines自动化部署。2.在AWS上,使用AmazonElasticBeanstalk和AWSLambda实现部署和无服务器计算。

    C#和.NET运行时:它们如何一起工作 C#和.NET运行时:它们如何一起工作 Apr 19, 2025 am 12:04 AM

    C#和.NET运行时紧密合作,赋予开发者高效、强大且跨平台的开发能力。1)C#是一种类型安全且面向对象的编程语言,旨在与.NET框架无缝集成。2).NET运行时管理C#代码的执行,提供垃圾回收、类型安全等服务,确保高效和跨平台运行。

    See all articles