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;
            }
        }
    }
}

 

posted on 2014-07-23 16:36  零点漂移  阅读(514)  评论(0编辑  收藏  举报