zoukankan      html  css  js  c++  java
  • EF框架搭建

    EF框架搭配lambda表达式使用起来非常高效便捷,有两种方法使用EF框架:

    一是、添加“ADO.NET Entity Data Model”项,绑定配置数据库链接,勾选表和存储过程等,自动生成实体;

    二是、继承DbContext,配置链接串。

    两种方法如下图所示:

    方法一:操作很简便,配置配置,连接到DB就好了,不过多废话。

    方法二:

    1》引用EntityFramework,引用System.Data.Entity;

    2》XXXDbContext类实现和DB的连接以及将实体和DB关联起来:

    namespace EFModel
    {
        public class XXXDbContext : DbContext
        {
            public XXXDbContext()
                : base("ConnectionString")//ConnectionString=>配置链接数据库的配置节点名称
            {
    
            }
    
            public DbSet<ClassData> Class { get; set; }
    
            protected override void OnModelCreating(DbModelBuilder modelBuilder)
            {
                modelBuilder.Conventions.Remove<IncludeMetadataConvention>();
            }
        }
    }

    Web.Config中的ConnectionString节点:

      <connectionStrings>
        <add name="ReplyCommentConn" connectionString="server=127.16.10.25,1921;uid=sa;password=7ujm8ik,;database=LingXia_CommentReply" providerName="System.Data.SqlClient"/>
      </connectionStrings>

    3》建立实体类Class类:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.ComponentModel.DataAnnotations;
    
    namespace EFModel
    {
        [Table("Class")]//映射到DB中的表名
        public class ClassData
        {
            [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
            public int Id { get; set; }
    
            public string ClassName { get; set; }
    
            public int Grade { get; set; }
    
            public string Teacher { get; set; }
    
            public int StudentsNum { get; set; }
        }
    }

    4》使用EF更新数据示例DataAccess:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace EFModel
    {
        public class DataAccess
        {
            public bool AddClass(ClassData data)
            {
                using (XXXDbContext db = new XXXDbContext())
                {
                    db.Class.Add(data);
                    return db.SaveChanges() > 0;
                }
            }
        }
    }
  • 相关阅读:
    python functools.lru_cache做备忘功能
    python clock装饰器 计算函数执行时间,执行结果及传入的参数
    python 闭包计算移动均值及nonlocal的使用
    使用 memoryview 和 struct 查看一个 GIF 图像的首部
    寻医问药 爬虫
    defaultdict使用及__missing__理解
    字典推导式
    collections deque队列及其他队列
    bisect 二分查找
    python array 使用创建10万浮点数
  • 原文地址:https://www.cnblogs.com/yangyp/p/3796949.html
Copyright © 2011-2022 走看看