您的位置:首页 > 编程语言 > ASP

asp.net基础知识点小汇总

2012-03-02 00:00 351 查看
[b]1.1      数据源控件有哪几种,分别有什么作用?[/b]
答案:
有五种数据源控件,分别是:SqlDataSource、AccessDataSource、ObjectDataSource、XmlDataSource、SiteMapDataSource。
这五种数据源控件获取数据的源分别为:数据库、Access数据库、方法、XML文件、站点地图

[b]1.2      数据绑定控件代码绑定数据有几种方式,需要注意什么[/b]
答案:
数据源控件代码绑定方法有两种
1、代码示例:
Gvinfo.DataSourceId=“数据源控件Id”;
2、代码示例:
Gvinfo.DataSource=类.方法(); //返回符合条件的类型
Gvinfo.DataBind();
需要注意的是:绑定数据源控件,指定DataSourecId属性即可;绑定方法返回类型,必须指定DataSource之后,调用DataBind()方法
[b]1.3      GrideView的七种列都是什么,各自的作用是什么?[/b]
答案:
BoundField,用于显示普通文本
TemplateField,用于自定义列绑定内容的列
ButtonField,用于创建按钮列
CommandField,GrideView自带命令功能的列
HyperLinkField,创建超链接的列
ImageField,用于显示图片的列
CheckBoxField,创建复选框的列
[b]1.4      GrideViewEvalBind绑定方式有什么区别?[/b]
答案:
Eval是只读的绑定方式,一般为显示控件绑定数据,在触发GrideView命令时,不会回传数据
Eval方法可以通过<%#Eval(“列名”,“格式”)%>可以对显示数据进行格式化
Bind方法是双向的绑定方式,一般和输入控件联合使用,在触发GrideView命令时,回传数据
没有格式化功能,只有<%#Bind(“列名”)%>的方式
[b]1.5      如何显示货币格式?对显示列有什么要求?[/b]
答案:
在绑定列的DataFormatString属性可以设置显示的格式,设置为{0:C}为货币格式
需要注意的是,显示列必须可以转化为货币格式
[b]1.6      GrideView的行绑定触发事件是什么?在操作时需要注意的是什么?[/b]
答案:
GrideView的在绑定行数据时,触发RowDataBound事件
需要注意的是,绑定不仅仅是数据行,还包含头和尾,所以我们在操作数据行时,需要利用(e.Row.RowType==DataControlRowType.DataRow)判断此行是否是数据行,避免引异常
[b]1.7      GrideView中,常用什么方法给控件添加客户端脚本?[/b]
答案:
利用以下语法添加:
控件名.Attributes.Add(“客户端事件”,”脚本内容”);
例如:btnOk.Attributes.Add(“onclick”,”<script>alert(‘弹出提示’)</script>”);
[b]1.8      如何***光棒效果?[/b]
答案:
首先,确定思路:在每行绑定数据的时候,添加客户端脚本
在RowDataBound中编写以下代码
If(e.Row.RowType==DataControlRowType.DataRow)
{
e.Row.Attributes.Add(“onmouseover”,”c=this.style.backgroundColor; this.style.backgroundColor=#ffffff”);
e.Row.Attributes.Add(“onmouseout”,”this.style.backgroundColor=c”);
}

[b]1.9      在显示信息列表后,点击某条信息后跳转到新页面,显示详细信息,我们通常用哪两个控件?如何设置?[/b]
答案:
用GrideView显示列表,DetailsView在新页面显示具体信息。
需要在GrideView中添加HyperLink列,设置 DataNavigateUrlField=绑定列名
DataNavigateFormatString=跳转页?参数名={0}
在详细信息页面,设置ObjectDataSource的参数来源为QueryString,设置QueryStringField=参数名

[b]2.1      验证控件的验证是客户端的还是服务端的?如果客户禁用了脚本,验证是否有效?[/b]
答案:
验证控件是在客户端和服务端都验证的,EnableClientScript属性为true时,客户端会截断错误的验证,不会回传。
如果客户端禁用了脚本,即使是错误的数据也会回传,但我们仍然可以通过Page.IsValid属性判断是否通过验证。因为服务端验证仍然存在
[b]2.2      5种验证控件和1中汇总控件是什么,各自作用是什么[/b]
答案:
RequiredFieldValidator,非空验证
CompareValidator,比较验证
RangeValidator,范围验证
RegularExpressionValidator,正则表达式验证
CustomValidator,自定义验证
ValidationSummary,不验证,可以汇总验证提示
需要注意的是,ValidationSummary汇总的是每个控件的ErrorMessage属性的值
[b]2.3      如何编写以下几个匹配公式:包含1-91-9组成的数字、10位数字?[/b]
答案:
[1-9]匹配成功
[^1-9]匹配失败
\d{10}匹配成功

[b]2.4      自定义控件的服务端事件是什么?自定义控件的客户端脚本参数是什么?如何控制验证失败?[/b]
答案:
服务端事件是ServerValidate
客户端脚本参数有两个。第一个参数代表事件源,第二个代表参数事件提供数据
验证失败,需要设置:参数事件提供数据.IsValid=false;

[b]2.5      如何给更新命令追加参数?为什么要追加参数?[/b]
答案:
追加参数:
ObjectDataSource1.UpdateParameters.Add(“参数名”,“参数值”);
原因是有些列是通过Eval方法绑定的,不会回传数据,但还需要更新,就必须通过追加参数的方式回传数据
[b]3.1      DataListGrideView相比,优点和功能缺陷是什么?[/b]
答案:
优点是效率比GrideView高,功能缺陷是没有集成的排序、分页功能。

[b]3.2      如何设置DataList的内容和分隔符?[/b]
答案:
可以在DataList的ItemTemplate中设置内容
可以在SeparateTemplate中设置分隔符
[b]3.3      通用双top分页语句和SQL2005的分页语句的原理各自是什么?[/b]
答案:
双top的原理是先查出当前页之前的所有记录,然后使用not in 来选择相邻的记录,注意两者的排序条件必须一致

SQL2005的分页语句原理是通过Row_Number() Over(Order by 条件)给所有的记录添加一个新的id列,这个id列是连续的数字,然后可以使用between来选择当前页内容
[b]3.4      PagedDataSource分页和SQL分页相比有何优缺点?[/b]
答案:
PagedDataSource的原理是接受全部的记录集,存储在内存中,然后通过属性改变当前页即可,连接一次数据库即可。节省了连接数据库的开销。但是如果数据量过大,会占用太多的内存
SQL分页是每次翻页都连接数据库,取出当前页的数据。缺点是多次连接数据库,优点是数据量大的时候,不会占用太多的内存而导致内存崩溃

[b]3.5      PagedDataSource的重要属性有哪些?[/b]
答案:
CurrentPageIndex:当前页
PageCount:总页数
Count:总信息数
PageSize:每页信息数
DataSource:数据源
AllowPaging:是否自动分页

[b]3.6      ViewState的原理是什么?如何使用?[/b]
答案:
ViewState是页面级的保持对象,会在客户端和服务端来回传递。
ViewState[“名称”]=赋值;
取值=ViewState[“名称”]

[b]3.7      Repeater生成什么HTML代码?是否有图形设计页面[/b]
答案:
Repeater不生成任何额外的HTML代码。
Repeater没有图形设计页面,只能通过源来手动添加数据
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: