上一篇: CYQ.Data 轻量数据层之路 使用篇二曲 MAction 数据查询(十三)
内容概要
本篇继续上一篇内容,本节介绍所有取值与赋值的相关操作。
1:原生:像操作Row一样
2:扩展:对UI操作 GetFrom与SetTo
3:扩展:非UI操作 Get与Set
代码共同部分提前说明,我们假设以通过以下方法查询完一行数据
MAction action
=
new
MAction(TableNames.Users);
if
(action.Fill(
"
UserName='路过秋天'
"
))
{
//
这里是今天要说的取值与赋值操作
action.Close();
}
一:原生操作
1:获取行数据
MDataRow row = action.Data;
2:通过字段取值
string
username
=
row[
"
UserName
"
].Value;
//
有枚举时
string
username
=
row[Users.UserName].Value;
3:通过索引取值
string userName = row[ 1 ].Value;
二:扩展 UI操作
说明:控件ID遵守起名约定:三个字母前缀+字段名称
例如TextBox控件ID为:txtUserName
则为txt(前缀)
+
UserName(数据库字段名称)
1:GetFrom 从控件中取值设置到行中
方法原型:
public
void
GetFrom(Control ct)
public
void
GetFrom(Control ct,
object
value)
示例1:
action.GetFrom(txtUserName);
//
等同于
action.Data[
"
UserName
"
].Value
=
txtUserName.Text;
示例2:
action.GetFrom(txtUserName,
"
路过秋天
"
);
//
等同于
action.Data[
"
UserName
"
].Value
=
"
路过秋天
"
;
2:SetTo 将行中的数据设置到控件中
方法原形:
public
void
SetTo(Control ct)
public
void
SetTo(Control ct,
object
value)
public
void
SetTo(Control ct,
object
value,
bool
isControlEnabled)
示例1:
action.SetTo(txtUserName);
//
等同于:
txtUserName.Text
=
action.Data[
"
UserName
"
].Value.ToString();
示例2:
action.SetTo(txtUserName,
"
路过秋天
"
);
//
等同于
txtUserName.Text
=
"
路过秋天
"
;
示例3:
action.SetTo(txtUserName,
null
,
false
);
//
等同于:
txtUserName.Text
=
action.Data[
"
UserName
"
].Value.ToString();
txtUserName.Enabled
=
false
;
三:扩展:非UI操作
1:Get 从行中获取数据
原生方法: public T Get < T > ( object key)
示例1:
string
userName
=
action.Get
<
string
>
(
"
UserName
"
);
string
userName
=
action.Get
<
string
>
(Users.UserName);
//
有枚举时
//
等同于
string
userName
=
action.Data[
"
UserName
"
].Value.ToString();
2:Set 从变量中设置值到行中
原生方法: public void Set( object key, object value)
示例1:
action.Set(
"
UserName
"
,
"
路过秋天
"
);
//
等同于:
action.Data[
"
UserName
"
].Value
=
"
路过秋天
"
;
结言:
通过本节说明,应该能掌握对于单行数据的基础操作。
对于下节使用说明:内容及名称仍未定。