在上一篇:CYQ.Data 轻量数据层之路 终极升级(二) 之时,我通过新增加GetFrom与SetTo方法,来避免直接使用索引的取值和赋值的不便。
本来,今天是打算写个实例教程,来简单介绍用这个超轻量框架进行开发是有多轻松的事情,不过在使用时,还是发现了个别的小bug。
于是,今天狂热的修改了N多代码,抽取Sql组成部分到单独的类中,继续去掉N多重载方法,留下最简洁最实用的方法。
以面看看有哪些改进:
数据库配置假设如下:

<add name="Conn" connectionString="Server=.;database=CQSpace;uid=sa;pwd=123456"/>
<add name="CYQ" connectionString="Server=.;database=CQSpace;uid=sa;pwd=123456"/>
</connectionStrings>
操作类的实例方法:
方法一:默认取配置文件Conn的链接字符串
方法二:取自定义名称如CYQ的链接字符串:
方法三:直取链接字符串
接下来看看都有什么操作方法更新:
1:单条数据查询方法:
方式一:直接传ID

if (action.Fill(888))
{
action.SetTo(lblAlbumType);
action.Close();
}
方式二:传where条件

if (action.Fill("Title='xxxx'"))
{
action.SetTo(lblAlbumType);
action.Close();
}
2:数据删除:
方式一:先填充再删除
{
action.Delete();
action.Close();
}
方式二:根据ID删除
action.Delete(888);
action.Close();
方式三:根据条件删除
action.Delete("id>888");
action.Close();
3:数据更新
方式一:先填充再更新
if (action.Fill(111))
{
action.GetFrom(txtAlbumName);
action.Update();
action.Close();
}
方式二:根据ID更新
action.GetFrom(txtAlbumName);
action.Update(111);
action.Close();
方式三:根据条件更新
action.GetFrom(txtAlbumName);
action.Update("id=299 or name='路过秋天'");
action.Close();
4:数据列表查询和多表联合查询没变化,和上上节一致。
5:新增加计数查询:
lblAlbumType.Text = action.GetCount("id>2 and Name='路过秋天'").ToString();
action.Close();
6:为了进一步隐藏索引取值与赋值而产生的Get与Set方法:
在上节的升级中,新增加的GetFrom与SetTo只能对控件赋值进行操作,如果我们只是需要取值,或设置值,中间没有控件呢?
在上节之前,我们只能又回到索引的方式取值了如:
狂热升级之后:用上新加的Get方法取值,效果就变成了:
而Set方法赋值则为:
于是,对于取值与赋值,我们目前有3种方法可用了:
2:对变量型的:Get与Set
3:保留的:索引数据/枚举与字段名(字符串)取值
OK,本节介绍点到为止,下节再开示例应用篇。欢迎使用与留言!
最后提供新版本V1.2下载:点击下载[大小:60K 没加密没混淆没限制,可放心使用,可直接用Reflector.exe查看源码]
版权声明:本文原创发表于 博客园,作者为 路过秋天 本文欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则视为侵权。 |
个人微信公众号![]() |
Donation(扫码支持作者):支付宝:![]() |
Donation(扫码支持作者):微信:![]() |
![]() |
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)