关于freesql使用过程中遇到的一个很严重的问题-编程思维
现在我们的项目里面FreeSql用得越来越多了,但是前面发现FreeSql有个非常危险的问题。 在把一个老项目的数据库转成FreeSql的时候,数据库表中有一个字段是长文本的类型,因为前面没有采用FreeSql库的,所以原先也是没有关于StringLength的配置,重构的时候忽略了这个细节,也忘了把这个参数配上。 private string _Content;
morethink program
现在我们的项目里面FreeSql用得越来越多了,但是前面发现FreeSql有个非常危险的问题。 在把一个老项目的数据库转成FreeSql的时候,数据库表中有一个字段是长文本的类型,因为前面没有采用FreeSql库的,所以原先也是没有关于StringLength的配置,重构的时候忽略了这个细节,也忘了把这个参数配上。 private string _Content;
返回指定字段: //返回一个字段 List<int> t5 = fsql.Select<Topic>().ToList(a => a.Id); //返回匿名类 List<匿名类> t6 = fsql.Select<Topic>().ToList(a => new { a.Id, a.Title }); //返回元组 List<
前言 最近做新项目,技术栈 AspNetCore + FreeSQL 这个ORM真的好用,文档也很完善,这里记录一下两个有关「触发器」的功能实现 修改实体时记录更新时间 模型代码 我的模型都是基于这个 ModelBase 派生的,自带三个属性字段 public abstract class ModelBase : ISoftDelete { public DateTime Created
这是专门为正在学习的新人准备的福利教程,在国庆节发表了八篇文章,请务必从第一篇开始看。 如果有疑问加QQ群:560611514【.NET C#爱好者】,里面有新人同学,也有老师傅帮你解答问题。 原创保护,转载请注明出处:https://www.cnblogs.com/FreeSql/p/16782488.html (一)了解 W3C (二)HTML 学习 (三)CSS 学习 (四)JavaS
最近很多 .net QQ 群无故被封停,特别是 wpf 群几乎全军覆没。依乐祝的 .net6交流群,晓晨的 .net跨平台交流群,导致很多码友流离失所无家可归,借此机会使用一次召唤术,有需要的请加群:560611514【.NET C#爱好者】,6406277【C#/.Net Core社区】,822074314【DotNet开发交流群】 💻 前言 看到标题点进来,也许有人问,为什么不用 mysq
前言 23种设计模式都会了吗?今天讲一下静态代理模式的实战场景。 代理模式给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。通俗的来讲代理模式就是我们生活中常见的中介。 举个例子来说明:假如说我现在想买一辆二手车,虽然我可以自己去找车源,做质量检测等一系列的车辆过户流程,但是这确实太浪费我得时间和精力了。我只是想买一辆车而已为什么我还要额外做这么多事呢?于是我就通过中介公司来买车,
💻 前言 导入数据这种脏活、累活,相信大家多多少少都有经历,常见的场景有: 同服务器从A表导数据到B表 批量导入新数据 批量新增或更新数据 跨服务器从A表导数据到B表 每种场景有自己的特点,我们一般会根据特点定制做导入数据优化,减少总体导入的耗时,或者避免数据库IO/CPU占用过高,而影响到其他正常业务。 FreeSql 有好几个实用功能,流式读取数据、查询并插入、批量对比更新、插入或修改(
💻 前言 FreeSql 支持 MySql/SqlServer/PostgreSQL/Oracle/Sqlite/Firebird/达梦/Gbase/神通/人大金仓/翰高/Clickhouse/MsAccess Ado.net 数据库,以及 Odbc 的专门实现包。 FreeSql.Cloud 为 FreeSql 提供跨数据库访问,分布式事务TCC、SAGA解决方案,支持 .NET Core 2
FreeSql是一个功能强大的 .NET ORM 功能库,支持 .NetFramework 4.0+、.NetCore 2.1+、Xamarin 等支持 NetStandard 所有运行平台。 特性 [x] 支持 CodeFirst 迁移; [x] 支持 DbFirst 从数据库导入实体类,支持三种模板生成器; [x] 采用 ExpressionTree 高性能读取数据; [x] 支持深入的
前言 FreeSql 是一个功能强大的 .NETStandard 库,用于对象关系映射程序(O/RM),支持 .NETCore 2.1+ 或 .NETFramework 4.6.1+。 QQ群:4336577(已满)、8578575(在线)、52508226(在线) 据了解,用户使用很少问问题,编码过程中,因业务阻塞,情有可原;因框架使用问题阻塞,得不偿失。我们的口号:做 .net 最方便的 O
FreeSql 经过半年的开发和坚持维护,在 0.6.x 版本中完成了几大重要事件: 1、按小包拆分,每个数据库实现为单独 dll; 2、实现 .net framework 4.5 支持; 3、同时支持 MySql.Data、MySqlConnector 的实现; 4、自定义导航属性关系的配置; 5、配套工具 FreeSql.Tools 发布; 本文主要讲解第5项,大主角往往在最后才出现!!!
前言 尝试过 ado.net、dapper、ef,以及Repository仓储,甚至自己还写过生成器工具,以便做常规CRUD操作。 它们日常操作不方便之处: 每次使用前需要声明,再操作; 很多人一个实体类,对应一个操作类(或DAL、DbContext、Repository); BaseEntity 是一种极简单的 CodeFirst 开发方式,特别对单表或多表CRUD,利用继承节省了
前言 FreeSql 发布至今已经有9个月,功能渐渐完善,自身的生态也逐步形成,早在几个月前写过一篇文章《ORM 开发环境之利器:MVC 中间件 FreeSql.AdminLTE》,您可以先阅读上一篇文章内容了解来龙去脉,再回到这里观看。 我个人非常喜欢小规模团队的"单打独斗",有的时候即使在大公司,也是做着3-5个人团队的小项目,相信不少人有类似的经历。 从上一篇文章可以看出,早先的 Free
FreeSql 支持 CodeFirst 迁移结构至数据库,这应该是(O/RM)必须标配的一个功能。 与其他(O/RM)不同FreeSql支持更多的数据库特性,而不只是支持基础的数据类型,这既是优点也是缺点,优点是充分利用数据库特性辅助开发,缺点是切换数据库变得困难。不同程序员的理念可能不太一致,作为功能库FreeSql支持到了极致,至于是否使用是项目组技术衡量的另一个问题。 尽管多种数据库适配
v1.4.0+ 已自动识别 EFCore 实体特性 Key/Required/NotMapped/MaxLength/StringLength/DatabaseGenerated/Table/Column 主键(Primary Key) class Topic { [Column(IsPrimary = true)] public int Id { get; set; } }
FreeSql 提供使用 FluentApi, 在外部配置实体的数据库特性,FluentApi 的方法命名与 Attribute 保持一致,如下: fsql.CodeFirst .ConfigEntity<TestFluenttb1>(a => { a.Name("table1"); a.Property(b => b.Id).Na
var connectionString = "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;" + "Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10"; static IFreeSql fsql = new FreeSql.Fr
var connectionString = "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;" + "Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10"; static IFreeSql fsql = new FreeSql.Fr
var connectionString = "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;" + "Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10"; static IFreeSql fsql = new FreeSql.Fr
插入数据时指定列,未被指定的列将被忽略。 var connectionString = "Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;" + "Initial Catalog=cccddd;Charset=utf8;SslMode=none;Max pool size=10"; static IFreeSql