关于c#freesql的使用记录

首先分享一波 freesql的官方操作指南地址:https://freesql.net/guide/

里面包括了增删改查的所有操作的地方,截个图以示尊重,respect!!!

在这里插入图片描述

增:

IFreeSql fsql = new FreeSql.FreeSqlBuilder() .UseConnectionString(FreeSql.DataType.MySql, connectionString) .UseAutoSyncStructure(true).Build(); //请务必定义成 Singleton 单例模式

class Topic {
[Column(IsIdentity = true, IsPrimary = true)] //id自增的属性
public int Id { get; set; }
public int Clicks { get; set; }
public string Title { get; set; }
public DateTime CreateTime { get; set; }
}

var items = new List();
for (var a = 0; a < 10; a++) items.Add(new Topic { Title = $“newtitle{a}”, Clicks = a * 100 });

删:举个例子

fsql.Delete()
.Where(b => b.Url == “http://sample.com”)
.ExecuteAffrows();

改:

fsql.Update()
.Set(b => b.Url, “http://sample2222.com”)
.Where(b => b.Url == “http://sample.com”)
.ExecuteAffrows();

查:

var blogs = fsql.Select()
.Where(b => b.Rating > 3)
.OrderBy(b => b.Url)
.Skip(100)
.Limit(10) //第100行-110行的记录
.ToList();

避坑——唯一键设置

百度了几个文档都是说主键应该这样设置:
public Guid id { get; set; }
[Column(Unique = “uk_phone”)]
public string phone { get; set; }

[Column(Unique = "uk_group_index, uk_group_index22")]
public string group { get; set; }

但是上面这么写一定会报错

而正确的写法应该是这样:这里附上连接以供查询:https://www.cnblogs.com/FreeSql/p/11531302.html,该网站里面还描述了主键属性等其他用法,特此分享给大家。
[Index(“uk_phone”, “phone”, true)]
[Index(“uk_group_index”, “group,index”, true)]
[Index(“uk_group_index22”, “group, index22 desc”, true)]
class AddUniquesInfo
{
public Guid id { get; set; }
public string phone { get; set; }

public string group { get; set; }
public int index { get; set; }
public string index22 { get; set; }

}
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
FreeSql是一种高性能免费开源的ORM框架,可以用于在C#中操作关系型数据库。以下是在C#使用FreeSql的步骤: 1. 安装FreeSql NuGet包 在Visual Studio中打开NuGet包管理器,搜索FreeSql并安装最新版。 2. 配置数据库连接 在App.config或Web.config文件中添加数据库连接字符串,例如: ```xml <connectionStrings> <add name="MySql" connectionString="Server=localhost;Database=mydatabase;User=root;Password=123456;"/> </connectionStrings> ``` 3. 初始化FreeSql 在应用程序启动时,初始化FreeSql并注册数据提供程序,例如: ```csharp // 初始化FreeSql var connectionString = ConfigurationManager.ConnectionStrings["MySql"].ConnectionString; var fsql = new FreeSql.FreeSqlBuilder() .UseConnectionString(FreeSql.DataType.MySql, connectionString) .UseAutoSyncStructure(true) .Build(); // 注册数据提供程序 FreeSql.Provider.Register<CustomMySqlProvider>(FreeSql.DataType.MySql); ``` 4. 编写数据访问代码 使用FreeSql的实体类、仓储类和LINQ语句,编写数据访问代码,例如: ```csharp // 定义实体类 public class User { public int Id { get; set; } public string Name { get; set; } public int Age { get; set; } } // 定义仓储类 public class UserRepository : FreeSqlRepository<User> { public UserRepository() : base() { } public UserRepository(UnitOfWorkManager uowm) : base(uowm) { } } // 使用LINQ语句查询数据 var users = fsql.Select<User>().Where(u => u.Age > 18).ToList(); // 使用仓储类查询数据 var userRepo = new UserRepository(); var user = userRepo.Where(u => u.Name == "Tom").FirstOrDefault(); // 使用事务提交数据 using (var uow = fsql.CreateUnitOfWork()) { var userRepo = uow.GetRepository<User>(); userRepo.Insert(new User { Name = "Jack", Age = 20 }); userRepo.Update(new User { Id = 1, Name = "Tom", Age = 22 }); uow.Commit(); } ``` 以上就是在C#使用FreeSql的基本步骤,可以根据实际情况进行调整和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码农Giao哥哥

如果觉得不错的话请打赏一波呗

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值