EF Core 使用手册
📄字数 1.5K
👁️阅读量 加载中...
EF Core 是轻量化、可扩展、开源和跨平台版的常用 Entity Framework 数据访问技术。本文档将介绍 XuguDB 对 EF Core 框架的适配情况,并简易描述使用 EF Core 开发 XuguDB 应用的 Demo 指南。
框架名称 | 适配起始版本 | 官网地址 | 源框架下载地址 | XuguDB框架下载 | demo程序地址 |
---|---|---|---|---|---|
EF Core | 1.0.0 | EF Core官网 | - | 版本发布列表 | xugu-efcore |
提示
其他适配版本可详见版本发布列表
一、方言包使用说明
1.1 方言包安装
XuguDB EF Core 方言提供 NuGet 包与方言动态库文件压缩包两种安装方式。
NuGet 包
XuguDB EF Core 提供 NuGet 包 Microsoft.EntityFrameworkCore.Xugu.X.X.X.X.nupkg
。
在解决方案资源管理器中加载项目,然后选择“项目”下的“管理 NuGet 程序包”。
使用搜索框,搜索
Microsoft.EntityFrameworkCore.Xugu
。在右窗格中,从下拉列表中选择版本。
选择安装。
提示
系统可能会要求接受许可条款或提示验证安装。
动态库文件压缩包
方言动态库文件压缩包内包含 XuguDB EF Core 方言包动态库文件。点击工程中的“引用”,右键选择“添加引用”,单击“浏览”选择解压获取到的方言包动态库文件,最后点击“确定”完成动态库文件引用。
1.2 连接 XuguDB
使用 UseXugu 方法,传入 XuguDB .NET 驱动连接串创建 XuguDB DbContext实例。
c#
optionsBuilder.UseXugu("IP=127.0.0.1; DB=system; USER=SYSDBA;PWD=SYSDBA; PORT=5138;CHARSET=UTF8;");
二、连接示例程序
本章节将介绍在 EF Core 应用连接 XuguDB 。
2.1 前提条件
- 已安装具有
.NET 桌面开发
工作负荷的 Visual Studio。 - 已安装 EF Core 。
- 已部署 XuguDB 12.0.0 或有能连接访问的虚谷数据库实例。
2.2 操作步骤
2.2.1 定义表模型
cs
using System;
using System.Collections.Generic;
namespace ConsoleApp1.Models
{
public partial class T1
{
public int Id { get; set; }
public byte[]? C1 { get; set; }
}
}
2.2.2 创建 XuguDB DbContext实例
根据 连接 XuguDB 说明 创建 XuguDB DbContext实例。
cs
public partial class MyDbContext : DbContext
{
public MyDbContext()
{
}
public MyDbContext(DbContextOptions<MyDbContext> options)
: base(options)
{
}
// 表模型对象添加
public virtual DbSet<T1> T1s { get; set; } = null!;
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
if (!optionsBuilder.IsConfigured)
{
// XuguDB DbContext实例
optionsBuilder.UseXugu(" IP=192.168.2.216; DB=system; USER=SYSDBA; PWD=SYSDBA; PORT=5138;CHARSET=UTF8;");
}
}
}
提示
EF Core 后续操作可查看 EF Core 官方文档。
三、常见问题&解决办法
在使用 EF Core 连接 XuguDB 时,可能会遇到各种错误。以下列举一些常见的错误及其处理方法。
3.1 “DbContextOptionsBuilder”未包含“UseXugu”的定义
方言包未正确导入,导致方法识别不到。参考方言包安装正确导入方言包。
3.2 字段ID不能设置成自增长
模型代码中的主键 ID 字段使用了无法作为自增主键的类型,使用 int 类型重新定义模型自增主键。