C# ORM框架,freesql,mysql数据库

使用C# freesql技术查询mysql数据库环境搭建

开发环境:vs2022

.NET框架:.NET4.0(winform)

开发环境搭建步骤:

1.在nuget包中搜索:FreeSql.Provider.MySql,并点击安装

2.在后台编写连接数据库代码,引入命名控件:using FreeSql;

  private bool ConnectSQL() //连接数据库
  {
      var connectionString = "Data Source=127.0.0.1;Port=3306;User ID=root;Password=123456;SslMode=none;Initial Catalog=test;CharSet=utf8mb4";//实例化连接对象
      fsql = new FreeSqlBuilder()
      .UseConnectionString(DataType.MySql, connectionString).Build();
      if (fsql!=null)
      {
          return true; //连接成功返回true
      }
      return false;
  }

3.编写数据库实体类,必须要和数据库的表中字段信息一致

using FreeSql.DataAnnotations;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace WindowsFormsApp1
{
    [Table(Name = "student")]
    public class Entity  //创建实体类,此类中的字段需要和数据库中的表字段一一对应,否则出错
    {
        [Column(IsIdentity = true, IsPrimary = true)]
        public int Id { get; set; }

        [Column(DbType = "varchar(255)")]
        public string name { get; set; }

        [Column(DbType = "varchar(255)")]
        public string author { get; set; }
        [Column(DbType = "varchar(255)")]
        public string press { get; set; }
        [Column]
        public int number { get; set; }

    }
}

4.前台调用此方法,显示数据到datagridview控件上(查询数据库所有数据)

   private void button1_Click(object sender, EventArgs e)
   {
       if (ConnectSQL()) 
       {
           List<Entity> entities = fsql.Select<Entity>().ToList(); //查询表中的信息
           dataGridView1.DataSource = entities;
       }
       else
       {
           MessageBox.Show("数据库连接失败");
       } 
   }

5.运行结果:

6.数据库中数据

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
你可以使用FreeSqlORM功能来查询MySQL数据库内某个月内的所有数据,具体的代码如下: ```csharp using System; using System.Collections.Generic; using System.Linq; using FreeSql; using FreeSql.DataAnnotations; public class MyEntity { [Column(IsIdentity = true)] public int Id { get; set; } public string Name { get; set; } public DateTime CreateTime { get; set; } } public class Program { static void Main(string[] args) { var mysqlConnectionString = "your mysql connection string here"; var freesql = new FreeSqlBuilder() .UseConnectionString(FreeSql.DataType.MySql, mysqlConnectionString) .UseAutoSyncStructure(true) //自动同步实体结构 .Build(); var entities = freesql.Select<MyEntity>() .Where(e => e.CreateTime >= new DateTime(2021, 1, 1) && e.CreateTime < new DateTime(2021, 2, 1)) .ToList(); foreach (var entity in entities) { Console.WriteLine($"Id: {entity.Id}, Name: {entity.Name}, CreateTime: {entity.CreateTime}"); } } } ``` 在上面的代码中,我们首先定义了一个 `MyEntity` 类,该类表示一个实体对象,其中包含了 `Id`、`Name` 和 `CreateTime` 三个属性。然后,在 `Main` 方法中,我们首先创建了一个 `FreeSql` 对象,并指定了 MySQL 数据库的连接字符串。接着,我们使用 `freesql.Select<MyEntity>()` 方法来创建一个查询对象,并通过 `Where` 方法指定了查询条件,即 `CreateTime` 字段在 `2021年1月1日` 至 `2021年2月1日` 之间。最后,我们使用 `ToList` 方法将查询结果转换为一个实体列表,并遍历输出每个实体对象的属性值。 注意,上面的代码中,我们使用了 `UseAutoSyncStructure(true)` 方法来启用自动同步实体结构功能,这样 FreeSql 在第一次查询时会自动创建 `MyEntity` 表。如果你的 MySQL 数据库中已经存在了 `MyEntity` 表,可以去掉这行代码。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值