EF Code-First CRUD操作

简介:

网上很多的教程都是跟MVC3绑在一起来讲解的,如果我们抛开MVC3,该如何使用呢?

首先新建一个控制台应用程序,我们把它命名为:EFCodeFirst-Books

第二步,添加EntityFramework的引用。

不要说你还不回使用NuGet,如果真的不会就去问度娘。在NuGet 控制台输入Install-Package EntityFramework,NuGet会为我们引用最新发布的EF版本,目前的版本是4.3。

第三步,添加实体类。

我新建了一个Models文件夹,在里面添加了Book类,类的定义如下:

复制代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace EFCodeFirst_Books.Models
{
    public class Book
    {
        public int BookID { get; set; }
        public string BookName { get; set; }
        public string Author { get; set; }
        public string Publisher { get; set; }
        public decimal Price { get; set; }
        public string Remark { get; set; }
    }
}
复制代码

因为是测试,我只添加了一个类。

第四步,添加DbContext类。

复制代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.Entity;

namespace EFCodeFirst_Books.Models
{
    public class AppDbContext : DbContext
    {
        public DbSet<Book> Books { get; set; }
    }
}
复制代码

第五步,检查你的数据库连接

如果你安装了SqlExpress,EF会自动的将连接指向SqlExpress,此处就不需要修改了。

如果你需要改到别的地方,需要修改一下数据库连接:

复制代码
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework">
      <parameters>
        <parameter value="Data Source=.;Initial Catalog=EFCodeFirst_Books;Integrated Security=True" />
      </parameters>
    </defaultConnectionFactory>
  </entityFramework>
复制代码

我这里指向的是本机的数据库,采用集成的安全验证。

第六步,开始你的CRUD操作

复制代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using EFCodeFirst_Books.Models;

namespace EFCodeFirst_Books
{
    class Program
    {
        static void Main(string[] args)
        {
            Book book = new Book()
            {
                BookName = "C#高级编程",
                Price = 151.8M,
                Publisher = "清华大学出版社",
                Author = "Wrox",
            };

            AppDbContext dbContext = new AppDbContext();
            dbContext.Books.Add(book);
            dbContext.SaveChanges();

            var booksQuery = from b in dbContext.Books select b;
            List<Book> booksList = booksQuery.ToList();

            book = booksList[0];
            book.Price = 203M;
            dbContext.SaveChanges();

            dbContext.Books.Remove(book);
        }
    }
}


本文转自齐师傅博客园博客,原文链接:http://www.cnblogs.com/youring2/archive/2012/05/23/2514442.html,如需转载请自行联系原作者
相关文章
|
9月前
|
API 数据库
如何使用WCF框架和EF框架实现对数据库的操作
如何使用WCF框架和EF框架实现对数据库的操作
|
缓存 关系型数据库 MySQL
C#-EF Core使用MySQL数据库
Entity Framework Core (EF Core)是微软推荐的基于.NET Core 的应用程序数据访问技术。开源,轻量级,可扩展并且支持跨平台开发。EF Core是一种对象关系映射器(ORM),通过应用程序实体对象和关系数据库中的数据的映射,使得开发人员能够以面向对象的方式处理数据。
487 0
|
开发框架 JSON 前端开发
ASP.NETCore 使用SQLite教程 EF SQLite教程,修改模型更新数据库,适合初学者看懂详细、简单教程
SQLIte 操作方便,简单小巧,这里笔者就不再过多介绍,感兴趣可以到以下博文 https://blog.csdn.net/qq_31930499/article/details/80420246 文章介绍创建ASP.NET Core 程序,创建模型、上下文,生成数据库,对数据库增删查改。 并对每个过程进行详细介绍,使初学者尽快了解内容和相关知识,避免对某一知识点怀疑、卡在某个位置。
995 0
ASP.NETCore 使用SQLite教程 EF SQLite教程,修改模型更新数据库,适合初学者看懂详细、简单教程
|
数据库 数据库连接 Shell
生成网上下载的EF项目对应的数据库
网上下载的用EF做的小项目,结果没有配有数据库的,用VS打开来看了一下,看到Migrations文件夹,应该可以用EF命令来生成这个数据库了 打开appsettings.json文件,可以看到他用了三个数据库的,我把他的三个数据库连接字符串都改为一样的,先在本地数据库里创建一个空白的数据库efde...
1148 0
|
C# 数据库 数据库管理
【C#】使用EF访问Sqlite数据库
原文:【C#】使用EF访问Sqlite数据库 1. 先上Nuget下载对应的包 如图,搜索System.Data.
2361 0
|
关系型数据库 数据库 数据安全/隐私保护
EF Core利用Scaffold从根据数据库生成代码
在EF6 之前的时代,如果需要从数据库中生成代码,是可以直接在界面上操作的,而到了EF Core的时代,操作方式又有更简便的方式了,我们只需要记住以下这条指令。   Scaffold-DbContext "Server=服务器地址;Database=数据库名;uid=用户名;pwd=密码" Microsoft.
1327 0