前面
<%# getstr(eval("isdonebycompany").tostring())%>
后台
protected string getstr(string boo)
{
if ("false".equals(boo))
{
return "未完成";
}
else
{
return "已完成";
}
}
说明asp教程.net绑定
databinder.eval 绑定不必关心数据来源(dataread或dataset)。不必关心数据的类型eval会把这个数据对象转换为一个字符串。在底层绑定做了很多工作,使用了反射性能。正因为使用方便了,但却影响了数据性能。当于dataset绑定时,dataitem其实式一个datarowview(如果绑定的是一个数据读取器(dataread)它就是一个idatarecord。)因此直接转换成datarowview的话,将会给性能带来很大提升。
9q gws3aq1i)u0 奇有网络传媒-博百优it网g0yf}2j:?w1k#t
使用时注意:1.注意字段名的大小写(要特别注意)。如果和查询的不一致,在某些情况下会导致比还要慢。2.如果想进一步提高速度,可采用的方法。不过其可读性不高
namespace my23up.my23up_control
{
using system;
using system.data;
using system.drawing;
using system.web;
using system.web.ui.webcontrols;
using system.web.ui.htmlcontrols;
using system.configuration;
using system.data.sqlclient;
/// <summary>
/// bbs_articleview 的摘要说明。
/// </summary>
public class bbs_articleview : system.web.ui.usercontrol
{
protected system.web.ui.webcontrols.repeater myrepeater;
private void page_load(object sender, system.eventargs e)
{
string myconn = configurationsettings.apps教程ettings[ "connectionstring "].tostring().trim();
sqlconnection myconnection = new sqlconnection(myconn);
string mycommandstring = "select * from article ";
sqldataadapter myadapter = new sqldataadapter( mycommandstring, myconnection );
dataset mydataset = new dataset();
myadapter.fill( mydataset, "mydatatable1 " );
myrepeater.datasource = mydataset.tables[ "mydatatable1 "].defaultview;
myrepeater.databind();
}
#region web 窗体设计器生成的代码
override protected void oninit(eventargs e)
{
//
// codegen: 该调用是 asp教程.net web 窗体设计器所必需的。
//
initializecomponent();
base.oninit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器
/// 修改此方法的内容。
/// </summary>
private void initializecomponent()
{
this.load += new system.eventhandler(this.page_load);
}
#endregion
}
}
============================以下是articleview.aspx.cs==============================
using system;
using system.collections;
using system.componentmodel;
using system.data;
using system.drawing;
using system.web;
using system.web.sessionstate;
using system.web.ui;
using system.web.ui.webcontrols;
using system.web.ui.htmlcontrols;
namespace my23up.bbs
{
/// <summary>
/// articleview 的摘要说明。
/// </summary>
public class articleview : system.web.ui.page
{
private void page_load(object sender, system.eventargs e)
{
// 在此处放置用户代码以初始化页面
}
#region web 窗体设计器生成的代码
override protected void oninit(eventargs e)
{
//
// codegen: 该调用是 asp.net教程 web 窗体设计器所必需的。
//
initializecomponent();
base.oninit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void initializecomponent()
{
this.load += new system.eventhandler(this.page_load);
}
#endregion
}
}
================================以下是articleview.aspx的html页面====================
<%@ page language= "c# " codebehind= "articleview.aspx.cs " autoeventwireup= "false " inherits= "my23up.bbs.articleview " %>
<%@ register tagprefix= "uc1 " tagname= "bbs_articleview " src= "../my23up_control/bbs_articleview.ascx " %>
<!doctype html public "-//w3c//dtd html 4.0 transitional//en " >
<html>
<head>
<title> articleview </title>
<meta name= "generator " content= "microsoft visual studio .net 7.1 ">
<meta name= "code_language " content= "c# ">
<meta name= "vs_defaultclientscript " content= "javascript教程 ">
<meta name= "vs_targetschema " content= "http://111cn.net/intellisense/ie5 ">
</head>
<body>
<form id= "form1 " method= "post " runat= "server ">
<font face= "宋体 ">
<uc1:bbs_articleview id= "bbs_articleview1 " runat= "server "> </uc1:bbs_articleview> </font>
</form>
</body>
</html>