MVC5学习小记(3)--数据库操作

首先MVC怎么对数据库进行操作的呢,这里用到了微软的神器,EF6

EF4.1有三种方式来进行数据操作及持久化。分别是Database-First,Model-First,Code-first:


       1.Database First是基于已存在的数据库,利用某些工具(如Vs提供的EF设计器)创建实体类,数据库对象与实体类的匹配关系等,你也可以手动修改这些自动生成的代码及匹配文件。
       2 .Model First 这种方式是先利用某些工具(如VS的EF设计器)设计出实体数据模型及他们之间的关系,然后再根据这些实体、关系去生成数据库对象及相关代码文件。
      3.Code First 这种方式需要先写一些代码,如实体对象,数据关系等,然后根据已有的代码描述,自动创建数据对象,这种方式在前一篇文章已经简单说过了。但其实这种方法与Model First是非常类似的。我们自己写的代码,其实就是用代码表示实体模型,而Model First是用可视化的方式描述了实体模型。

 

我这里用Code first:

分别引用Mysql+EF。然后设置model

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
namespace test1.Models
{
    public class User
    {
        
        public String Id { get;set;}
        [Required]
        public String Name{get;set;}
        [Required]
        public String PassWord { get; set; }
        [Required]
        public int rolt { get; set; }
    }
}

model上下文:

 

 

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

namespace test1.Models
{
    public class UserContext : DbContext
    {
        public UserContext() : base("name=UserContext")
        {
        }
        public System.Data.Entity.DbSet<test1.Models.User> Users { get; set; }
    
    }
}


web.config操作

 

 

<connectionStrings>
    <add name="UserContext" connectionString="Data Source=localhost;port=3306;Initial Catalog=mvcweb;user id=root;password=root;" 
providerName="MySql.Data.MySqlClient"/>
  </connectionStrings>

添加控制器

 

 

然后,运行,果断不行,因为这里没有创建数据库,也没有初始化,并且我初始化还出现各种问题,百度无果后,直接迁移。

 1.Enable-Migrations

 2.add-migration Initial

 3.Update-Database

然后数据库就有表了。可能在上步会出现问题。

参考 http://blog.csdn.net/tangolivesky/article/details/46507723

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值