EFCodeFirst快速搭建入門

EFCodeFirst快速搭建入門

1.新建Model類庫項目。

添加EntityFramework.dll的引用。html

編寫實體類Course,Student。數據庫

namespace EFCodeFirst.Model
{
    public class Course
    {
        [Key]
        public int Id { get; set; }

        [Required]
        [StringLength(50)]
        public string Name { get; set; }
    }
}
namespace EFCodeFirst.Model
{
    public class Student
    {
        [Key]
        public int Id { get; set; }
        [Required]
        [StringLength(20)]
        public string Name { get; set; }

        public Course Course { get; set; }
    }
}

ps:Key是主鍵。ide

2.編寫EF上下文StudentInfoEntities類。

namespace EFCodeFirst.Model
{
    public class StudentInfoEntities:DbContext
    {
        public DbSet<Course> Course { get; set; }
        public DbSet<Student> Student { get; set; }
    }
}

3.新建控制檯項目

在配置文件中加入上下文的鏈接字符串的信息。ui

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <connectionStrings>
    <add name="StudentInfoEntities" connectionString="Data Source=.\;Initial Catalog=StudentInfo;Integrated Security=True" providerName="System.Data.SqlClient"/>
  </connectionStrings>
</configuration>

4.在主程序代碼中調用

調用方式和EFModelFirst一致,詳細參見 http://www.cnblogs.com/sunniest/p/4138291.html,第一次運行時EF會自動生成數據庫(包括外鍵等信息)。spa

namespace EFCodeFirst
{
    class Program
    {
        static StudentInfoEntities db = new StudentInfoEntities();
        static void Main(string[] args)
        {
            Course co =  db.Course.Where(u=>u.Name=="語文").FirstOrDefault();
            db.Student.Add(new Student() { Name = "jayjay", Course = co });
            db.SaveChanges();
            Console.ReadKey();
        }
    }
}

生成數據庫的結構如圖。code

相關文章
相關標籤/搜索