WPF实战学习笔记08-创建数据库

创建数据库

创建文件夹

./Context

创建文件

./Context/BaseEnity.cs

./Context/Memo.cs

./Context/MyTodoContext.cs

./Context/Todo.cs

./Context/User.cs

创建数据对象

  • ./Context/BaseEnity.cs

    namespace MyToDo.Api.Context
    {public class BaseEnity{public int Id { get; set; }public DateTime CreateDate { get; set; }public DateTime UpdateDate { get; set; }}
    }
    
  • ./Context/Memo.cs

    namespace MyToDo.Api.Context
    {public class Memo:BaseEnity{public string Title { get; set; }public string Content { get; set; }}
    }
  • ./Context/MyTodoContext.cs

    创建数据库DbSet

    using Microsoft.EntityFrameworkCore;namespace MyToDo.Api.Context
    {public class MyTodoContext:DbContext{public MyTodoContext(DbContextOptions<MyTodoContext> options) : base(options) { }public DbSet<Todo> TodoSet { get; set; }public DbSet<User> UserSet { get; set; }public DbSet<Memo> MemoSet { get; set; }}
    }
    
  • ./Context/Todo.cs

    namespace MyToDo.Api.Context
    {public class Todo:BaseEnity{public string Title { get; set; }public string Content { get; set; }public int Status { get; set; }}
    }
    
  • ./Context/User.cs

    namespace MyToDo.Api.Context
    {public class User:BaseEnity{public string Account { get; set; } public string UserName { get; set; }public string Password { get; set; }}
    }
    

添加nuget包

  • Microsoft.EntityFrameworkCore.Design

    Shared design-time components for Entity Framework Core tools.

  • Microsoft.EntityFrameworkCore.Sqlite

    SQLite database provider for Entity Framework Core.

  • Microsoft.EntityFrameworkCore.Tools

    Entity Framework Core Tools for the NuGet Package Manager Console in Visual Studio.

    Enables these commonly used commands:
    Add-Migration
    Bundle-Migration
    Drop-Database
    Get-DbContext
    Get-Migration
    Optimize-DbContext
    Remove-Migration
    Scaffold-DbContext
    Script-Migration
    Update-Database

配置连接字符串

  • appsettings.json
{"ConnectionStrings": {"TodoConnection": "Data Source=todo.db"},"Logging": {"LogLevel": {"Default": "Information","Microsoft.AspNetCore": "Warning"}},"AllowedHosts": "*"
}

配置数据库连接选项

  • program.cs
builder.Services.AddDbContext<MyTodoContext>(option =>
{var constr = builder.Configuration.GetSection("ConnectionStrings")["TodoConnection"];option.UseSqlite(constr);
});
var app = builder.Build();

启动配置数据库

[工具]-> [Nuget包管理器]-> [程序包管理器控制台]

  1. 输入 :Add-Migration mytodo

    生成数据库配置项文件

  2. 输入 :Update-Database

    将数据库更新到sqlite数据库中,制成sqlite数据库文件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/10984.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C#之泛型

目录 一、概述 二、C#中的泛型 继续栈的示例 三、泛型类 &#xff08;一&#xff09;声明泛型类 &#xff08;二&#xff09;创建构造类型 &#xff08;三&#xff09;创建变量和实例 &#xff08;四&#xff09;比较泛型和非泛型栈 四、类型参数的约束 &#xff08;一…

elementUI --- el-select 下拉框 日历 级联选择

element UI 组件库中的 select 选择器 中下拉列表的样式&#xff0c;在页面渲染的时候&#xff0c;总是渲染为仅次于body级别的div &#xff0c;这样子覆盖样子会影响全局其他的select选择器下拉框样式&#xff0c;试图通过给el-select加父标签来覆盖&#xff0c;然而并没有卵用…

【FAQ】关于无法判断和区分用户与地图交互手势类型的解决办法

一&#xff0e; 问题描述 当用户通过缩放手势、平移手势、倾斜手势和旋转手势与地图交互&#xff0c;控制地图移动改变其可见区域时&#xff0c;华为地图SDK没有提供直接获取用户手势类型的API。 二&#xff0e; 解决方案 华为地图SDK的地图相机有提供CameraPosition类&…

Linux 之 Vi 编辑器

文章目录 1. vi/vim介绍2. vi/vim使用详解2.1 vi/vim的特点2.2 vi/vim三种编辑模式2.3 文本编辑方式 1. vi/vim介绍 vi编辑器是linux和unix上最基本的文本编辑器&#xff0c;工作在字符模式下。由于不需要图形界面&#xff0c;vi是效率很高的文本编辑器。尽管在linux上也有很多…

手机视频聊天分享

在人际互动的手机APP中&#xff0c;增加语音视频聊天功能是一个常见的需求。而现在&#xff0c;更进一步&#xff0c;在某些场景下&#xff0c;我们需要能将自己的手机屏幕分享给他人&#xff0c;或者是观看他人的手机屏幕。那么&#xff0c;这些常见的功能是如何实现的了&…

哈希表及其模拟实现

文章目录 一、解决哈希冲突1.1闭散列1.1.1线性探测1.1.2二次探测 1.2开散列 二、模拟实现哈希表三、HashMap源码的一些相关内容 哈希&#xff08;散列&#xff09;方法&#xff1a;构造一种存储结构&#xff0c;通过某种函数使元素的存储位置与它的关键码之间能够建立 一 一 映…

【JavaWeb】Tomcat底层机制和Servlet运行原理

&#x1f384;欢迎来到dandelionl_的csdn博文&#xff0c;本文主要讲解Java web中Tomcat底层机制和Servlet的运行原理的相关知识&#x1f384; &#x1f308;我是dandelionl_&#xff0c;一个正在为秋招和算法竞赛做准备的学生&#x1f308; &#x1f386;喜欢的朋友可以关注一…

Java ServletRequest 类源码解析

ServletRequest 是 Java Servlet API 中的接口&#xff0c;用于提供对客户端发起的请求的访问。它代表一个客户端的请求&#xff0c;并包含了请求的信息&#xff0c;例如请求头、请求参数、请求体等。 以下是 ServletRequest 接口的一些主要属性和方法的解析&#xff1a; 属性…

HCIA实验二

实验要求&#xff1a; 1.R2为ISP&#xff0c;只能配置IP 2.R1-R2之间为HDLC封装 3.R2-R3之间为PPP封装&#xff0c;pap认证&#xff0c;R2为主认证方 4.R2-R4之间为PPP封装&#xff0c;chap认证&#xff0c;R2为主认证方 5.R1、R2、R3构建MGRE&#xff0c;仅R1的IP地址固定…

【Nginx12】Nginx学习:HTTP核心模块(九)浏览器缓存与try_files

Nginx学习&#xff1a;HTTP核心模块&#xff08;九&#xff09;浏览器缓存与try_files 浏览器缓存在 Nginx 的 HTTP 核心模块中其实只有两个简单的配置&#xff0c;这一块也是 HTTP 的基础知识。之前我们就一直在强调&#xff0c;学习 Nginx 需要的就是各种网络相关的基础知识&…

AndroidStudio设计一个计算器

界面设计 activity_calcuator.xml 设计&#xff1a; <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.android.com/apk/res/android"xmlns:app"http://schemas.android.com/apk/res-auto&qu…

Spring 官方文档及相关资料的网址集合

文章目录 MavenSpringSpring FrameworkSpring BootSpring Cloud AlibabaNacos Maven Maven 仓库依赖包官方查询通道&#xff1a;https://mvnrepository.com/ Maven 插件官方文档&#xff1a;https://maven.apache.org/plugins/ 安卓依赖包官方查询通道*&#xff1a;https://m…

3ds Max图文教程: 创建致命的冠状病毒动画

推荐&#xff1a; NSDT场景编辑器助你快速搭建可二次开发的3D应用场景 1. 病毒建模 步骤 1 打开 3ds Max。 打开 3ds Max 步骤 2 在透视视口中创建一个半径为 50&#xff0c;线段为 20 的 GeoSphere。 创建地球 步骤 3 打开修改器列表并将置换修改器应用于地理 球。 置换…

【STL】模拟实现反向迭代器

目录 1. 读源码 2. 搭建框架 3. 迭代器的操作 operator*() operator->() operator() operator--() operator!() 4. 实现 list 的反向迭代器 5. 实现 vector 的反向迭代器 6. 源码分享 写在最后&#xff1a; 1. 读源码 我们之前实现的 vector&#xff0c;list…

类加载机制,类加载顺序

类加载顺序 ①类加载从上往下执行&#xff0c;依次执行静态的初始化语句和初始化块&#xff0c;而且类加载优先于对象创建。&#xff08;静态初始化语句和初始化块只加载一次&#xff09; ②创建本类的对象时&#xff0c;从上往下执行一次非静态的初始化语句和初始化块&#…

react-Native init初始化项目报错”TypeError: cli.init is not a function“

文章目录 一、问题&#xff1a;二、解决&#xff1a; 一、问题&#xff1a; 在react-native init appDemo 创建项目时&#xff0c;报错TypeError: cli.init is not a function。 二、解决&#xff1a; 产生这个问题的原因是&#xff1a;使用这种方式创建工程&#xff0c;rea…

Unity《勇士传说》开发日记:如何制作可互动标识

要实现的需求&#xff1a; 在游戏当中&#xff0c;我们的主角走到宝箱前&#xff0c;可以将宝箱打开&#xff0c;走到洞穴口可以进入下一个场景&#xff0c;此时需要有个互动标识来提示用户。如图所示&#xff1a; 当角色走到宝箱前&#xff0c;弹出互动标识提示用户按下E键可…

【集成学习介绍】

1. 引言 在机器学习领域&#xff0c;集成学习&#xff08;Ensemble Learning&#xff09;是一种强大的技术&#xff0c;通过将多个弱学习器组合成一个更强大的集成模型&#xff0c;来提升模型的鲁棒性和性能。 2. 集成学习的原理 集成学习的核心思想是“三个臭皮匠&#xff…

adb笔记

打开拨号盘 adb shell am start -a android.intent.action.DIAL -d tel:*该命令通过dumpsys window命令获取当前设备的窗口信息&#xff0c;并使用grep mCurrentFocus过滤出包含"mCurrentFocus"关键字的行&#xff0c;从而获取当前活动窗口或应用程序的名称和包名。…