1.mvc5+ef6+Bootstrap 项目心得--创立之初

2.mvc5+ef6+Bootstrap 项目心得--身份验证和权限管理

3.mvc5+ef6+Bootstrap 项目心得--WebGrid

  在使用ef6的时候,如果木有系统的学习,很多人都是一脸蒙的吧。经过N天的摸索和网上查找资料学习,总结了下。这里简单说一下ef+bootstrap的安装和使用。

  打开vs2015创建web项目,选择Empty,而不是MVC。然后下面有三个勾选项:Web Froms,MVC,Web Application。把MVC的勾选项。然后会看到项目里面只有ControllerS,Models,Views 三个空的文件夹。

  安装ef6的步骤:

  1.   工具——NuGet包管理器——程序包管理控制平台。
  2. 输入“Install-Package EntityFramework” ——回车,等待安装好
  3. 输入“Install-Package bootstrap”

需要用到的2个模块安装好了。接下来就是使用code first里面的Migrations。

1. 在Models下创建一个Class作为数据库的Table用。

2.继承DbContext。

public class LifeMContext : DbContext
{
public LifeMContext() : base("LifeMContext")
{ }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
} public DbSet<User> UserList { get; set; }
public DbSet<AddressInfo> AddressInfoList { get; set; }
public DbSet<EnumDictionary> EnumDictionaryList { get; set; }
}

3.记得要在web.config里面加上数据库链接

<connectionStrings>
<add name="LifeMContext" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\LifeM.mdf;Initial Catalog=LifeM;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>

4.在程序包管理控制平台输入“enable-migrations -contexttypename LifeManager.Models.LifeMContext”。“enable-migrations -contexttypename” 是命令创建migrations文件夹和Configuration.cs用的。注意是“enable-migrations -contexttypename” 空格不能少。

internal sealed class Configuration : DbMigrationsConfiguration<LifeManager.Models.LifeMContext>
{
public Configuration()
{
AutomaticMigrationsEnabled = false;
ContextKey = "LifeManager.Models.LifeMContext";
} protected override void Seed(LifeManager.Models.LifeMContext context)
{
// This method will be called after migrating to the latest version. // You can use the DbSet<T>.AddOrUpdate() helper extension method
// to avoid creating duplicate seed data. E.g.
//
// context.People.AddOrUpdate(
// p => p.FullName,
// new Person { FullName = "Andrew Peters" },
// new Person { FullName = "Brice Lambson" },
// new Person { FullName = "Rowan Miller" }
// );
//以下插入数据会出现中文乱码,VS2015需升级update2
//var guid = Guid.NewGuid().ToString();
//context.EnumDictionaryList.AddOrUpdate(t=>t.Value,
//new EnumDictionary() { GuidKey = guid, Value = "系统管理", Url = "#", ParentGuid = "0", OrderASC = 1, Level = 1 },
//new EnumDictionary() { GuidKey = Guid.NewGuid().ToString(), Value = "用户管理", Url = "#", ParentGuid = guid, OrderASC = 1, Level = 2 },
//new EnumDictionary() { GuidKey = Guid.NewGuid().ToString(), Value = "机构管理", Url = "#", ParentGuid = guid, OrderASC = 2, Level = 3 },
//new EnumDictionary() { GuidKey = Guid.NewGuid().ToString(), Value = "角色管理", Url = "#", ParentGuid = guid, OrderASC = 3, Level = 4 },
//new EnumDictionary() { GuidKey = Guid.NewGuid().ToString(), Value = "区域管理", Url = "#", ParentGuid = guid, OrderASC = 4, Level = 5 },
//new EnumDictionary() { GuidKey = Guid.NewGuid().ToString(), Value = "系统安全", Url = "#", ParentGuid = "0", OrderASC = 1, Level = 5 });
//context.SaveChanges();
}
}

5.在程序包管理控制平台输入“add-migration initial”,等待在输入“update database”。这个时候在项目中有个App_Data文件夹,里面就是数据库啦。之后在Models下创建class或者修改class后,使用“add-migration initial” “update database”2条命令即可更新数据库。注意数据库里面有个“__MigrationHistory”表 一定不能删,一定不能删,一定不能删。后果自己试试就知道了- -!

如果觉得敲命令麻烦可以使用界面管理NuGet。右键项目——管理NuGet程序包。直接输入“EntityFramework”,“Bootstrap”,下载就好了。需要加NPOI,JSON,Jquery UI等等都可以在这里搜索,安装。

如果觉得文章不错,请给个推荐(◕ˇ◞◟ˇ◕),谢谢。

最新文章

  1. Web API - Video File Streaming
  2. select接收后台返回值的解决方案
  3. js其它
  4. Java开发中的23种设计模式(转)
  5. myeclipse中导入的jquery文件报错(出现红叉叉,提示语法错误)
  6. 面试之BI-SQL--table转换[2]
  7. Python之路第十三天,高级(7)-详述数据库一对多,多对多表关系的设计以及如何查询
  8. Dropping Balls (二叉树+思维)
  9. 转载:ecshop自定义销量
  10. 认识Underscore
  11. 详解EBS接口开发之WIP模块接口
  12. IP协议详解(转)
  13. To be taught if i am fortunate
  14. poj 2778 AC自动机+矩阵快速幂
  15. (转载)Javascript 中的非空判断 undefined,null, NaN的区别
  16. 转载:Eureka 开发时快速剔除失效服务
  17. JDK 8 安装及配置
  18. 针对Xcode 9 + iOS11 的修改,及iPhone X的适配
  19. MySQL 的 DISTINCT 应用于2列时
  20. 【整理】HTML5游戏开发学习笔记(2)- 弹跳球

热门文章

  1. truncate表hang住(等待时间较长),出现enq:RO fast object reuse等待事件
  2. coursera机器学习-支持向量机SVM
  3. MemSQL分布式架构介绍(一)
  4. tomcat常用配置
  5. devtmpfs文件系统创建设备节点
  6. Objective-C声明在头文件和实现文件中的区别
  7. Appium学习实践(二)Python简单脚本以及元素的属性设置
  8. java 22 - 23 多线程之定时器的概述和使用例子
  9. 源码安装mysql
  10. Delphi项目的构成