///<summary>
///用户信息结构
///</summary>
publicstructTUSER
{
publicstringLoginName;
publicstringLoginPass;
publicstringTrueName;
publicstringEMail;
publicintLevel;
}
///<summary>
///获得所有注册用户
///</summary>
///<paramnameparamname=USERINFO>返回用户信息结构</param>
publicboolGetUsers(outTUSER[]G_USERINFO)
{
USEROPTUSER[]f_TUSER;
intCurRec=;//初始化记录计数器
intrec_count=;//计算总记录数
SqlConnectionmyConn=newSqlConnection(connectionString);
stringcmd=select*from+m_Table;//SQL查询语句
SqlCommandmycmd=newSqlCommand(cmdmyConn);
mycmdConnectionOpen();//打开连接
SqlDataReaderadr=null;//创建数据读取器
try
{
adr=mycmdExecuteReader();
while(adrRead())
{
rec_count+=;
}
myConnClose();//关闭数据库连接
mycmdConnectionOpen();//打开数据库连接
try
{
adr=mycmdExecuteReader();
f_TUSER=newUSEROPTUSER[rec_count];
while(adrRead())
{
f_TUSER[CurRec]LoginName=adr[US_LOGINNAME]ToString();
f_TUSER[CurRec]LoginPass=adr[US_LOGINPASS]ToString();
f_TUSER[CurRec]TrueName=adr[US_TrueName]ToString();
f_TUSER[CurRec]EMail=adr[US_EMail]ToString();
f_TUSER[CurRec]Level=IntParse(adr[US_Level]ToString());
CurRec+=;
}
G_USERINFO=f_TUSER;
myConnClose();///关闭连接
returntrue;
}
catch
{
myConnClose();
f_TUSER=newUSEROPTUSER[];
f_TUSER[]LoginName=;
f_TUSER[]LoginPass=;
f_TUSER[]TrueName=;
f_TUSER[]EMail=;
f_TUSER[]Level=;
G_USERINFO=f_TUSER;
returnfalse;
}
}
catch
{
myConnClose();
f_TUSER=newUSEROPTUSER[];
f_TUSER[]LoginName=;
f_TUSER[]LoginPass=;
f_TUSER[]TrueName=;
f_TUSER[]EMail=;
f_TUSER[]Level=;
G_USERINFO=f_TUSER;
returnfalse;
}
/////////////////在WEBFORM中调用如下:
privatevoidButton_Click(objectsenderSystemEventArgse)
{
KSBMUSEROPTUSER[]f_TUSER;//=newKSBMUSEROPTUSER();
///为什么不new一个结构数组呢?因为传进来的已是我们要的数据了所以只要开辟一个存储空间就行了
KSBMUSEROPf_USOP=newKSBMUSEROP();
boolret=f_USOPGetUsers(outf_TUSER);///调用函数取得结构数组及信息
if(f_TUSERLength!=)//数据长度为时表明无返回数据
{
for(intiloop=;iloop<f_TUSERLength;iloop++)///遍历数组并输出到客户端的浏览器
{
ResponseWrite(f_TUSER[iloop]LoginName);
ResponseWrite(f_TUSER[iloop]LoginPass);
ResponseWrite(f_TUSER[iloop]TrueName);
ResponseWrite(f_TUSER[iloop]EMail);
ResponseWrite(f_TUSER[iloop]Level);
}
}