diff --git "a/\345\220\264\344\275\263\346\225\217/20241218\350\257\276\345\240\202\347\254\224\350\256\260--\346\225\260\346\215\256\345\272\223\350\277\236\346\216\245.md" "b/\345\220\264\344\275\263\346\225\217/20241218\350\257\276\345\240\202\347\254\224\350\256\260--\346\225\260\346\215\256\345\272\223\350\277\236\346\216\245.md" new file mode 100644 index 0000000000000000000000000000000000000000..913c87c99c4b0ac48872bd26dac4063f0ac6d675 --- /dev/null +++ "b/\345\220\264\344\275\263\346\225\217/20241218\350\257\276\345\240\202\347\254\224\350\256\260--\346\225\260\346\215\256\345\272\223\350\277\236\346\216\245.md" @@ -0,0 +1,41 @@ +# Mvc项目连接数据库 + +a.定义实体(即你想要得几张数据表的模型) + +b.定义数据库上下文: + +1. dotnet add package MicroSoft.EntityFrameWork.Core SqlServer + +2. 在数据库模型中要记得引用using MicroSoft.EntityFrameWork.Core; + +3. eg:public classs ScoreDbContext:DbContext{ + + public Dbsetstudents{get;set;}=null! + + ---这句代码的意思是:Dbset是一个EntityFrameWork定义的泛型类,用于表示数据库中的一张表,students代表数据库中我们所需要的那张表,而student类型代表的是数据库中那张表的结构,也是用来传递程序和数据库之间的信息 + + } + +4. protected override void Onconfiguring(DbcontextoptionsBuilder optionsBuilder){ + + //调用Dbcontext类型中的原始方法,以初始化一些配置 + + base.OnConfiguring (optionsbuilder); + + optionsBuilder.usesqlserver(constring)---constring代表配置连接字符 + + } + +c.生成迁移文件 + +1. 前提文件:需要一个Design的依赖包,命令是:dotnet add package MicroSoft.EntityFrameWork.Core.Design +2. 需要一个工具包,这个工具包是dotnet-ef,全局安装命令是:dotnet tool install-global dotnet-ef +3. 程序不能处于运行状态 +4. 程序不能有编译错误,可以用dotnet build命令排查 + +d.同步迁移文件到数据库 + +命令是 dotnet ef database update + +e.控制器和试图之间的关系 +