如何使用FreeSql?

发布时间 2023-11-09 16:40:41作者: 王雨萱

一、配置FreeSql

 FreeSql官网:https://freesql.net/guide/

 1.安装 FreeSql.Provider.SqlServer 安装包

       

  2.创建实体类

   

  3. 连接数据库

    

 

"ConnectionStrings": {
//自己的数据库
"Connstr": "server=.;uid=sa;pwd=123456;database=CAP1108;TrustServerCertificate=True",
//Cap数据库
"OrderCap": "server=.;uid=sa;pwd=123456;database=OrderCap;TrustServerCertificate=True"
}

 

 4.在Program中配置

     

 

Func<IServiceProvider, IFreeSql> fsqlFactory = r =>
{
    IFreeSql fsql = new FreeSql.FreeSqlBuilder()
        .UseConnectionString(FreeSql.DataType.SqlServer, builder.Configuration.GetConnectionString("Connstr"))
        .UseLazyLoading(true)
        //.UseMonitorCommand(cmd => Console.WriteLine($"Sql:{cmd.CommandText}"))//监听SQL语句
        .UseAutoSyncStructure(true) //自动同步实体结构到数据库,FreeSql不会扫描程序集,只有CRUD时才会生成表。
        .Build();
    return fsql;
};
//在项目启动时,从容器中获取IFreeSql实例,并执行一些操作:同步表,种子数据, FluentAPI等
using (IServiceScope serviceScope = app.Services.CreateScope())
{
    var fsql = serviceScope.ServiceProvider.GetRequiredService<IFreeSql>();
    fsql.CodeFirst.SyncStructure(typeof(UserInfo));//Topic 为要同步的实体类
}

5.直接运行项目,就自动映射到数据库了,数据库有表就可以把创建实体那一段代码注释了就好了。