简单的Entity Framework连接教程

准备工作:

一、直接添加ASP.NET Web应用程序(.Net Framework)

二、使用NuGet包添加引用EntityFramework

以上两步仅为准备工作。

 

开始敲代码部分:

一、在Models文件夹下面创建一个普通类当做实体类,命名Student,为其创建一些简单的属性:

using System.ComponentModel.DataAnnotations;

namespace EntityFramework.Models
{
    public class Student
    {
        [Key]
        public int ID { get; set; }

        public string Name { get; set; }
    }
}

注:添加实体类属性时,手动设置[Key]是个好习惯,不设置[Key]主键的话,程序默认主键为带有id的属性。每个实体类必须有Key。

二、为实体类创建一个数据库上下文类DbContext:

using System.Data.Entity;

namespace EntityFramework.Models
{
    public class StudentDbContext : System.Data.Entity.DbContext
    {
        public StudentDbContext() : base("Conn")
        {
        }
        public DbSet<Models.Student> students { get; set; }
    }
}

数据库上下文类中存在了一个构造函数,一个用来操作的数据库的上下文,被DbSet定义的students。

构造函数的作用是定义一个连接数据库的字符串"Conn"。

被DbSet定义的students就是我们用来操作数据库的上下文,里面存在了常用的Add,Delete,Save等增删改查方法。

三、配置web.config文件:

  <connectionStrings>
    <add name="Conn" connectionString="server=?;uid=?;pwd=?;database=?" providerName="System.Data.SqlClient" />
  </connectionStrings>

添加<connectionStrings>属性

<add>里面主要存在三个重要配置信息,name为上下文类设置的连接字符串,connectionStrings为连接数据库信息,providerName定义了连接不同数据库的类型,这里为sqlserver。

四、运用DbContext操作数据库:

为了简单,我们在Controller里面直接执行DbContext的相关操作,在实际运用在为了解耦,DbContext不能出现在Controller。

using System.Web.Mvc;
using EntityFramework.Models;
namespace EntityFramework.Controllers
{
    public class HomeController : Controller
    {
        StudentDbContext db = new StudentDbContext();

        public ActionResult Index()
        {
            Student student = new Student();
            student.ID = 1;
            student.Name = "LiMing";
            db.students.Add(student);
            db.SaveChanges();
            return View(student);
        }
    }
}
  1. 创建了一个DbContext对象命名为db.
  2. 实体化一个student,并为其赋值
  3. 利用Add方法把student添加进入上下文
  4. 利用SaveChanges方法把更改的上下文存入数据库
  5. 把实体student返回给视图

五、在View中接收Controller传来的student

@{
    ViewBag.Title = "Home Page";
}

@model EntityFramework.Models.Student

@Html.DisplayFor(model => model.ID)
@Html.DisplayFor(model => model.Name)

在视图中就可以查出数据。

总结:这是我的第一篇博客,还有很多不足的地方请各位见谅。我的经验来看,学习EntityFramework最好分为MVC三个部分分别理解,当你已经可以完成MVC三个部分的交互的时候,就已经从0进入到1了,剩下的部分(增删改查)就比较轻松了。

评论 3 您还未登录,请先 登录 后发表或查看评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:技术黑板 设计师:CSDN官方博客 返回首页

打赏作者

昨天喝了_果粒橙

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值