CODE FIRST之空数据模型

Posted work-hard-to-make-money

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CODE FIRST之空数据模型相关的知识,希望对你有一定的参考价值。

1、首先添加空Code Firtst模型

技术图片

 

2、新建两个实体类,关系一对多

    public class UserInfo
    {
        public UserInfo()
        {
            OrderInfo = new HashSet<OrderInfo>();
        }

        [Key]
        public int Id { get; set; }
        public string Name { get; set; }
        public int Age { get; set; }

        public virtual ICollection<OrderInfo> OrderInfo { get; set; }
    }
    public class OrderInfo
    {
        public int Id { get; set; }
        public string Content { get; set; }

        public virtual UserInfo userInfo { get; set; }
    }

  

3、修改模型文件,启用实体类

public class CodeFirst : DbContext
    {
        //您的上下文已配置为从您的应用程序的配置文件(App.config 或 Web.config)
        //使用“CodeFirst”连接字符串。默认情况下,此连接字符串针对您的 LocalDb 实例上的
        //“CodeFirstDemo.CodeFirst”数据库。
        // 
        //如果您想要针对其他数据库和/或数据库提供程序,请在应用程序配置文件中修改“CodeFirst”
        //连接字符串。
        public CodeFirst()
            : base("name=CodeFirst")
        {
        }

        //为您要在模型中包含的每种实体类型都添加 DbSet。有关配置和使用 Code First  模型
        //的详细信息,请参阅 http://go.microsoft.com/fwlink/?LinkId=390109

        public virtual DbSet<UserInfo> UserInfo { get; set; }
        public virtual DbSet<OrderInfo> OrderInfo { get; set; }
    }

 

4、修改app.config文件连接属性,此处Database不存在

<connectionStrings>
    <add name="CodeFirst" connectionString="Data Source=****;User Id=sa;Password=****;Database=CODETEST;MultipleActiveResultSets=True;App=EntityFramework" providerName="System.Data.SqlClient" />
</connectionStrings>

 

5、在代码中创建数据库并插入数据

CodeFirst dbContext = new CodeFirst( );
dbContext.Database.CreateIfNotExists();

UserInfo userInfo = new UserInfo();
userInfo.Age = 10;
userInfo.Id = 1;
userInfo.Name = "张三";
dbContext.UserInfo.Add(userInfo);
dbContext.SaveChanges();

Console.WriteLine("ok");

 

 


以上是关于CODE FIRST之空数据模型的主要内容,如果未能解决你的问题,请参考以下文章

代码优先与模型/数据库优先[关闭]

Ado.Net 视图数据模型 空Code First

旧的 Code-First 模型在数据库中有字段,但在模型中没有

.NET Code First ORM [关闭]

Database-First,Model-First,Code-first

EF Code First与另一个数据库上的现有数据库