zoukankan      html  css  js  c++  java
  • EF4.1使用

    EF分为三类:

    db first:首先建立数据库,然后通过ADO.Net Entity Data Model项目建立.edmx文件,这是一个xml文件主要作用就是映射类和数据表

    model first:首先建立.edmx文件,映射类和数据表的关系,然后生成代码

    code first:首先写代码,如实体对象,数据关系等,然后根据已有的代码描述,自动创建数据对象

    这里主要介绍code first方法:

    首先下载http://www.microsoft.com/en-us/download/confirmation.aspx?id=8363 EF 4.1

    和EF 4.x DbContext 具体在vs2010->工具->扩展管理器->联机库->搜索EF 4.x DbContext

    主要优点:

    1.在不使用设计器或者定义一个 XML 映射文件的情况下进行开发。

    2.允许编写简单的模型对象POCO (plain old classes),而不需要基类。

    3.通过"约定优于配置",使得数据库持久层不需要任何的配置

    4.也可以覆盖"约定优于配置",通过流畅的 API 来完全定制持层的映射。

    5.添加实体类不需要使用基类和特性等代码

    简单的代码如下:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Data.Entity;

    namespace EFDemo
    {
    class Program
    {
    static void Main(string[] args)
    {
    using (var db = new BlogDbContext())
    {
    var blogUser = new BlogUser() { BlogUserId = 1, BlogName = "e" };
    db.BlogUsers.Add(blogUser);
    var post = new Post()
    {
    PostId = 1,
    PostTitle = "123",
    BlogUserId = 1
    };
    db.Posts.Add(post);

    int recordAffected = db.SaveChanges();
    Console.WriteLine("追加{0}记录成功", recordAffected);
    }
    }
    }

    public partial class BlogUser
    {
    public int BlogUserId { get; set; }
    public string BlogName { get; set; }

    public virtual ICollection<Post> Posts { get; set; }
    }

    public partial class Post
    {
    public int PostId { get; set; }
    public string PostTitle { get; set; }
    public int BlogUserId { get; set; }

    public virtual BlogUser BlogUser { get; set; }
    }

    public class BlogDbContext : DbContext
    {
    public IDbSet<BlogUser> BlogUsers { get; set; }
    public IDbSet<Post> Posts { get; set; }
    }
    }

  • 相关阅读:
    shell脚本根据端口号kill掉进程
    使用netstat -ano 查看机器端口的占用情况(windows环境)
    分享一两个小工具,
    将压缩文件伪装图片格式文件以及将python文件转化为exe文件(测试完,真的有效)
    celery 异步任务 周期任务 定时任务的实现
    wsgi、uwsgi、asgi协议的关系
    centos7忘记密码更改步骤
    工作遇到的坑以及自己的学习悟道之道
    案例小集锦
    asp.net mvc部署
  • 原文地址:https://www.cnblogs.com/weichao975/p/3795506.html
Copyright © 2011-2022 走看看