当前位置: 首页 > news >正文

.NET8使用EF Core连接SQLite

使用框架 .NET8
在nuget中,需要安装包:
SQLitePCLRaw.bundle_e_sqlite3,版本 2.1.10
Microsoft.EntityFrameworkCore.Sqlite.Core,版本 9.0.0

using Microsoft.Data.Sqlite;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Options;
using System.Reflection.Metadata;
using WpfRepairProject.Model;


namespace WpfRepairProject.IData_impl
{
    public class EFContextSQLite : DbContext
    {
        protected override void OnConfiguring(DbContextOptionsBuilder options)
        {
            try
            {
                string sqlitefileName = WpfSnqkGasAnalysis.Model.MyConfigReader.GetConfigValue("connctionDb");
                string filePath = Path.Combine(AppContext.BaseDirectory, "DataBase", sqlitefileName);

#if DEBUG
                filePath = "G:\\work_my_test\\推荐表单\\linjie_recommend_project\\代码\\snqk_wpf_qi\\WpfSnqkGasAnalysis\\WpfSnqkGasAnalysis\\DataBase\\ljRepaireProject.sqlite";
#endif

                options.UseSqlite($"Data Source={filePath}");
               
                //设置不跟踪所有查询  
                options.UseQueryTrackingBehavior(QueryTrackingBehavior.NoTracking);


#if DEBUG
                //启用敏感数据日志记录
                options.EnableSensitiveDataLogging();

                //记录日志          
                options.LogTo(msg =>
                {
                    //调试-窗口消息
                    System.Diagnostics.Debug.WriteLine(msg);

                    //输出-窗口消息
                    Console.WriteLine(msg);
                     
                }, Microsoft.Extensions.Logging.LogLevel.Information);
#endif

                // options.
                

            }
            catch (Exception ex)
            {
                ex = ex.InnerException ?? ex;
                LogHelpter.AddLog("数据库连接异常," + ex.Message, "error_DbContext");
            }
        }
      


        public DbSet<K_department> K_department { get; set; }
        public DbSet<K_user> K_user { get; set; }

 
        public DbSet<K_login_log> K_login_log { get; set; }
        public DbSet<K_operate_log> K_operate_log { get; set; }
        public DbSet<K_repair_classify> K_repair_classify { get; set; }
        public DbSet<K_repair_project> K_repair_project { get; set; }
        public DbSet<K_repair_recommend_main> K_repair_recommend_main { get; set; }
        public DbSet<K_repair_recommend_result> K_repair_recommend_result { get; set; }

        public DbSet<K_service_department> K_service_department { get; set; }
 

    }
}

相关文章:

  • vue3之写一个aichat---已聊天组件部分功能
  • 快速部署Linux + Ollama + AnythingLLM + Deepseek
  • CEF 多进程模式时,注入函数,获得交互信息
  • 关于 2>/dev/null 的作用以及机理
  • 半导体制造行业的现状 内检LIMS系统在半导体制造的应用
  • EJS缓存解决多页面相同闪动问题
  • MySQL中的锁机制:从全局锁到行级锁
  • 「JavaScript深入」Socket.IO:基于 WebSocket 的实时通信库
  • keepalived+nginx+tomcat高可用
  • C# 中比较实用的关键字,基础高频面试题!
  • Linux系统中安装各种常用中间件
  • android adjust 卸载与重装监测
  • 投影算子(Projection Operator)的定义、性质、分类以及应用
  • CentOS 7 64位安装Docker
  • python关键字汇总
  • 面试总结之 Glide自定义的三级缓存策略
  • 回调方法传值汇总
  • websocket中spring注入失效
  • 【多线程】线程安全集合类,ConcurrentHashMap实现原理
  • 本地部署DeepSeek-R1(每天8:00Dify通过企微机器人推送新闻热点到群里)
  • 网购网站建设/开发外包网站
  • 做外贸 建网站要注意什么/百度一键优化
  • 网站建设与管理多选题/搜索网页内容
  • 什么是网络营销的重要特点/整站关键词排名优化
  • 东莞网站建设网站推广/网站seo快速排名优化的软件
  • wordpress 调用分类名/性价比高的seo网站优化