查询是操作做多的一个了当然方法也是最多的
还是用代码来说话吧
直接传SQL语句版
IList<RJ.Model.Users> ss = db.ToIList<RJ.Model.Users>("select * from Users where U_Id>2");RJ.Model.Users user= db.Single("select top 1 * from Users where U_Id=2");
IList<RJ.Model.Users> ss2 = db.ToIList<RJ.Model.Users>("select * from Users where u_id>@u_id ",new System.Data.SqlClient.SqlParameter("@u_id",2));
当然很多人会反对直接用sql语句 但不可否认大多数的公司都在用这种方法(不算大公司哈 大公司我也没去过不知道) 就算你是只写 "u_id>2"传到BLL DAL中也算
还是说下查询的原理吧 因为我们最关心的还是性能的问题
RJ中所以查询都是以DataReader的方试查询的在转换成IList<RJ.Model.Users>也不是单纯的用的反射因为那样做很慢 而是用的Emit来编写的 了解Emit都知道用了Emit就完全不用考虑性能方面的问题了
当然有的人不想返回对象想返回DataSet 没关系 ToDataSet就行了
查询也有异步方法居体参照之前的随笔就不在这写了
查询当然不能忘了缓存 不管是网站还是什么缓存是最最重要的东西
好了看下RJ是怎么实现缓存的
IList<RJ.Model.Users> ss = db.ToIList<RJ.Model.Users>("select * from Users where U_Id>2",1000);
看很简单吧来看看和之前的差别 只是多了个缓存时间的参数 (单位 秒)
完
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?