1.创建数据库

2.创建表

  1. <pre name="code" class="sql">CREATE TABLE [dbo].[Student](
  2. [ID] [INT] IDENTITY(1,1) NOT NULL,
  3. [Name] [NVARCHAR](30) NULL,
  4. [StudentNo] [NVARCHAR](20) NULL,
  5. [Age] [INT] NULL,
  6. [Sex] [NVARCHAR](2) NULL,
  7. [Description] [NVARCHAR](100) NULL,
  8. [classID] [INT] NULL
  9. ) ON [PRIMARY]

3.安装EntityFramework

点击“References”,鼠标右键选择:“Manage NuGet Packages...”。

在线搜索“EntityFramework”,下载安装

4.添加数据库连接字符串

双击“Web.config”

添加连接字符串:

  1. <connectionStrings>
  2. <add name="DataConnection" connectionString="server=127.0.0.1;database=Test;uid=sa;pwd=123456" providerName="System.Data.SqlClient"/>
  3. </connectionStrings>

5.在Models目录下,添加实体上下文类StuInfoDBContext

注意添加EF应用

DataConnection为连接字符串的名称

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Data.Entity;
  6. namespace Iweb.Areas.SiteInfo.Models
  7. {
  8. public class StuInfoDBContext:DbContext
  9. {
  10. public StuInfoDBContext()
  11. : base("DataConnection")
  12. {
  13. }
  14. }
  15. }

6.在Models目录下,添加实体模型类Student

注意和数据库中表名保持一致,否则EF会新创建一张实体模型类对应的表

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. namespace Iweb.Areas.SiteInfo.Models
  6. {
  7. public class Student
  8. {
  9. public int ID { get; set; }
  10. public string Name { get; set; }
  11. public string StudentNo { get; set; }
  12. public int Age { get; set; }
  13. public string Sex { get; set; }
  14. public string Description { get; set; }
  15. public int classID { get; set; }
  16. }
  17. }

7.这样程序就和数据库连接起来了,程序中的实体模型和数据库中的表一一对应

8.测试

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Web.Mvc;
  6. using System.Data;
  7. using Iweb.Areas.SiteInfo.Models;
  8. namespace Iweb.Areas.SiteInfo.Controllers
  9. {
  10. public class SiteInfoController : Controller
  11. {
  12. //
  13. // GET: /SiteInfo/SiteInfo/
  14. public ActionResult Index()
  15. {
  16. StuInfoDBContext stuContext = new StuInfoDBContext();
  17. string sql = @"INSERT INTO dbo.Student
  18. ( Name ,
  19. StudentNo ,
  20. Age ,
  21. Sex ,
  22. Description ,
  23. classID
  24. )
  25. VALUES  ( N'abc' , -- Name - nvarchar(30)
  26. N'1010322119' , -- StudentNo - nvarchar(20)
  27. 24 , -- Age - int
  28. N'男' , -- Sex - nvarchar(2)
  29. N'健身,爬山' , -- Description - nvarchar(100)
  30. 2  -- classID - int
  31. )";
  32. stuContext.Database.ExecuteSqlCommand(sql);
  33. List<Student> stuLis= stuContext.Database.SqlQuery<Student>("SELECT * FROM dbo.Student").ToList();
  34. return View();
  35. }
  36. }
  37. }

原创“http://blog.csdn.net/tkdwave520/article/details/44629903”

MVC ef 连接数据库的更多相关文章

  1. ASP.NET MVC EF 连接数据库(三)-----Code First

    Code first (VS2015 ,Sql Server2014) 新建MVC项目 实例: 在数据库中会有个新建的数据库和表 源码地址:https://note.youdao.com/ynotes ...

  2. ASP.NET MVC EF 连接数据库(一)-----Database First

    database first (VS2015 ,Sql Server2014) 1,新建MVC项目 实例:   源码代码:http://note.youdao.com/noteshare?id=1fd ...

  3. ASP.NET MVC EF 连接数据库(二)-----Model First

    Model first (VS2015 ,Sql Server2014) 新建MVC项目     右键product ,新增标量属性(数据库表中的字段)   Ctrl + S 保存页面,右键“根据模型 ...

  4. MVC MVC+EF快速搭建

    MVC+EF快速搭建 一.准备: vs2017(个人用的) 二.开始MVC+EF之旅吧: 1.创建mvc项目: Web-ASP.NET Web Application(.NET Framework)  ...

  5. C# MVC+EF—结构搭建

    近期做了MVC+EF的项目,现在项目完结了,抽个时间写个小DOM总结一下,顺便加深理解. 一.新建MVC项目,结构是这样的

  6. 国产化之路-统信UOS + Nginx + Asp.Net MVC + EF Core 3.1 + 达梦DM8实现简单增删改查操作

    专题目录 国产化之路-统信UOS操作系统安装 国产化之路-国产操作系统安装.net core 3.1 sdk 国产化之路-安装WEB服务器 国产化之路-安装达梦DM8数据库 国产化之路-统信UOS + ...

  7. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(24)-权限组的设计和实现(附源码)(终结)

    ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框架搭建    (2):数据库访问层的设计Demo    (3):面向接口编程   (4 ):业务逻辑层的封装    ...

  8. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(23)-设置角色遗留问题和为权限设置角色以及EasyUI Tabs的使用

    ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框架搭建    (2):数据库访问层的设计Demo    (3):面向接口编程   (4 ):业务逻辑层的封装    ...

  9. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(22)-为用户设置角色

    ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框架搭建    (2):数据库访问层的设计Demo    (3):面向接口编程   (4 ):业务逻辑层的封装    ...

随机推荐

  1. deepin软件中文乱码

    如图所示,deepin软件,会有这种情况,中文全是乱码,口口口.这表示很讨厌,学长给出的解决办法,将系统换成英文语言,这样确实解决了乱码,但是还是有问题,比如在写中文注释,又变成这样了. 去deepi ...

  2. OpenCV——Perlin Noise

    // define head function #ifndef PS_ALGORITHM_H_INCLUDED #define PS_ALGORITHM_H_INCLUDED #include < ...

  3. [SHOI 2017] 组合数问题

    [题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=4870 [算法] 回顾组合数的定义 : C(N , M)表示将N个小球放入M个盒子里的 ...

  4. groovy语言和grails框架

    Groovy 是一种动态语言,它在 JVM 上运行,并且与 Java 语言无缝集成. Groovy 可以大大减少 Java 代码的数量.在 Groovy 中,不再需要为字段编写 getter 和 se ...

  5. Spring中JdbcTemplate的基础用法

    Spring中JdbcTemplate的基础用法 1.在DAO中使用JdbcTemplate 一般都是在DAO类中使用JdbcTimplate,在XML配置文件中配置好后,可以在DAO中注入即可. 在 ...

  6. HDOJ-2058

    The sum problem Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)T ...

  7. 1.6 Hive配置metastore

    一.配置 1.配置文件 #创建配置文件 [root@hadoop-senior ~]# cd /opt/modules/hive-0.13.1/conf/ [root@hadoop-senior co ...

  8. 4-1数据类型转换的基本概念 & 4-2 & 4-3数据类型转换案例 & 4-4习题

    4-1数据类型转换的基本概念 253是int类型的,赋值给长整型的n 这种就是强制的类型转换 自动类型转换又叫做饮食类型转换,因为他的转换我们是看不到的 实线表示无数据丢失的 虚线在转换时, doub ...

  9. 妙味课堂史上最全的javascript视频教程,前端开发人员必备知识点,新手易学,拔高必备!!!

    妙味课堂是北京妙味趣学信息技术有限公司旗下的IT前端培训品牌, 妙味课堂是一支独具特色的IT培训团队,妙味反对传统IT教育枯燥乏味的教学模式,妙味提供一种全新的快乐学习方法! 妙味js视教第一部分  ...

  10. Win7 server2008 共享文件夹 不输入网络密码

    如何设置共享文件夹访问不需要输入用户名和密码: 1.“开始”——“运行”——secpol.msc (1)使用空白密码的本地帐户只允许进行控制台登录 禁用它 (2)“本地策略”——“安全选项”——“网络 ...