随笔 - 714  文章 - 0  评论 - 12812  阅读 - 301万 

首先看一下CYQ.Data 经典的使用手法:

using(MAction action=new MAction(表名))

{

   action.Select(where).Bind(列表控件);

}

CYQ.Data 在很多地方是直接使用原生的sql语法的,示例如:

1:where条件:如:action.Select("ID>1 or UserName='cyqdata'")

每个传入的where条件,都会经过一个高强度的sql防注入函数,过滤特殊字符或函数,因此安全级别是很高的。

2:多表查询:

new MAction(" (select a.name,b.* from a,b) newtablename");

 

有小部分人士,似乎不怎么喜欢原生的sql语法,于是V5就简单的扩展了一下,来让这小部分人士去构建自己的语法。

 

比如我们需要新的语法如下:

1:对于where条件:

action.Select(User.ID>1 & User.UserName=="cyqdata");

2:对于构造表视图:

new MAction(T.Skin.LeftJoin(T.User).On(Skin.UserID==User.ID));

 

原理分析:

对于新的语法糖,没有编绎器的支持,我们只能借助于重载一些运行符号或方法来实现这些。

比如:

重载

posted on   路过秋天  阅读(290)  评论(0编辑  收藏  举报
编辑推荐:
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
阅读排行:
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)
历史上的今天:
2010-06-05 关于用飞信框架运行net程序-用批处理运行
路过秋天
点击右上角即可分享
微信分享提示