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等等都可以在这里搜索,安装。

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

mvc5+ef6+Bootstrap 项目心得--创立之初的更多相关文章

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

    1.mvc5+ef6+Bootstrap 项目心得--创立之初 2.mvc5+ef6+Bootstrap 项目心得--身份验证和权限管理 3.mvc5+ef6+Bootstrap 项目心得--WebG ...

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

    1.mvc5+ef6+Bootstrap 项目心得--创立之初 2.mvc5+ef6+Bootstrap 项目心得--身份验证和权限管理 3.mvc5+ef6+Bootstrap 项目心得--WebG ...

  3. [转]mvc5+ef6+Bootstrap 项目心得--身份验证和权限管理

    本文转自:http://www.cnblogs.com/shootingstar/p/5629668.html 1.mvc5+ef6+Bootstrap 项目心得--创立之初 2.mvc5+ef6+B ...

  4. MVC5 + EF6酒店项目笔记

    最近项目组准备用MVC5开发酒店模板包括后台.在此第一次学MVC5一个礼拜,看着组长给我的MVC5模板从一脸懵逼到懵懂. 慢慢学习,成长. 未完待续........

  5. MVC5+EF6+AutoMapper+Bootstrap打造在线博客(1.0)

    目的:MVC5+EF6开发一个高并发.分布式的在线博客,等开发完成以后再用.net core,mysql重新开发,部署到linux系统上,这一系列就算完结,经验不足,大家一起讨论进步,源代码下载QQ群 ...

  6. MVC5 + EF6 + Bootstrap3 (7) Bootstrap的栅格系统

    文章来源: Slark.NET-博客园http://www.cnblogs.com/slark/p/mvc5-ef6-bs3-get-started-grid.html 上一节:ASP.NET MVC ...

  7. [实战]MVC5+EF6+MySql企业网盘实战(20)——Bootstrap Paginator

    写在前面 考虑到数据量的问题,特引入bootstrap的分页插件.插件下载地址:https://github.com/lyonlai/bootstrap-paginator 系列文章 [EF]vs15 ...

  8. MVC5+EF6 简易版CMS(非接口) 第一章:新建项目

    目录 简易版CMS后台管理系统开发流程 MVC5+EF6 简易版CMS(非接口) 第一章:新建项目 MVC5+EF6 简易版CMS(非接口) 第二章:建数据模型 MVC5+EF6 简易版CMS(非接口 ...

  9. ASP.NET MVC5+EF6+EasyUI 后台管理系统(1)-前言与目录(持续更新中...)

    开发工具:VS2015(2012以上)+SQL2008R2以上数据库  您可以有偿获取一份最新源码联系QQ:729994997 价格 666RMB  升级后界面效果如下: 任务调度系统界面 http: ...

随机推荐

  1. 带进度条的 jQuery 文件拖放上传插件

    jQuery File Uploader :jQuery File Uploader 是一个 jQuery 文件拖放上传插件 兼容性判断 下载:https://github.com/danielm/u ...

  2. 如何让django方法自动地定期执行

    实现思路:1.首先把需要自动执行的django method写成django command2.将自己定义的django command添加到cron中使用cron服务实现定期执行 Part1 在dj ...

  3. 一个PHP混淆后门的分析

    洒家的朋友的公司的某个站发现最近被上传了一个后门程序.为了取证我们抓取了HTTP请求流量,看到了一堆莫名其妙看似经过混淆的请求,响应也是看似base64的乱码.洒家用了2个小时静态分析了一遍,并写了利 ...

  4. 利用网络流传的WebShell默认密码库寻找WebShell

    声明:本文提到的技术,仅可用作网络安全加固等合法正当目的.本文作者无法鉴别判断读者阅读本文的真实目的,敬请读者在本国法律所允许范围内阅读本文,读者一旦因非法使用本文提到技术而违反国家相关的法律法规,所 ...

  5. 禁用站点asp运行

    禁用站点asp运行 进入 Mcafee 的 VirusScan 控制台,双击访问保护->进文件, 共享资源和文件夹保护,在要阻挡的文件和文件夹那点添加 规则名: 禁止网站进程在任何地方修建和修改 ...

  6. iTOP-4412嵌入式开发板ioremap控制GPIO寄存器

    转自迅为电子技术论坛:http://bbs.topeetboard.com GPIO 的寄存器通过 ioremap函数转换之后,可以通过直接控制虚拟地址来控制物理地址(寄存器的实际地址),这样就实现 ...

  7. [转]在ASP.NET MVC5中实现具有服务器端过滤、排序和分页的GridView

    本文转自:http://www.cnblogs.com/powertoolsteam/p/MVC5_GridView_2.html 背景 在前一篇文章<[初学者指南]在ASP.NET MVC 5 ...

  8. MMORPG大型游戏设计与开发(part1 of net)

    网络模块的设计,是大型多人在线游戏中比较重要的一部分.我之所以将网络模块放到最前面,是因为许许多多的开发者面对这一块的时候充满了疑惑,而且也觉得很神秘和深奥.这些我们面对到的困难,其实是由于我们对这方 ...

  9. Java Web之Filter

    Filter被称为过滤器或者拦截器,基本功能就是对调用servler过程的拦截,在servlet进行响应和处理前后实现一些特殊功能.其实,Filter过滤器就是一个实现了javax.servlet.F ...

  10. Objective-C if语句处理 BOOL值不为1和0的情况

    BOOL ,布尔值,在Objective-C ,BOOL类型被typedef为signed char(有符号的整型),YES被#define为1,NO被#define为0. 事实上,xcode的编译器 ...