今天在学EF Code First模式的时候,发现几个很有趣的问题,问题如下: 1.当编写玩实体后,不指定任何主键约束,EF会找长的最像Id的,然后设置其为主键,验证代码如下: //User类 class User { public Guid UserId { get; set; } public string Name { get; set; } } class CodeFirstContext:DbContext { public DbSet<User> Users { get; set;…
共有两种方法: 1.使用migrate.exe 具体使用方法请参考 msdn migrate使用方法,这里只做介绍 复制migrate.exe 在使用 NuGet 安装实体框架时,migrate.exe 位于下载包的 tools 文件夹中.在 \packages\EntityFramework.\tools 中,有了 migrate.exe 之后,需要将其复制到发布后的bin文件夹下 使用 Migrate.exe 打开命令行窗口,定位到bin文件夹下(此时该文件加下已经有了migrate.exe…
这个类用来拼接 sql. package com.ly.orm; public class Query { protected Query(String v) { sql = v; } public String toString() { return sql; } protected String sql; public String select(String... cols) { if (cols.length == 0) { return String.format(sql, "*&qu…
在实际生产中有时我们需要将一张表的数据导入到另外一张表,如果有PLSQL,我们可以通过PLSQL工具将数据导出为sql脚本,然后再在另外一个数据库中执行这个脚本.但有时在实际生产中我们没有PLSQL这个工具,而且PLSQL的导出工具也不是特别好用.这时我们可以通过sqlplus中的spool工具,将我们需要的数据导出为sql建表脚本. spool工具是将我们在sqlplus中的输出写入自己需要的文件中,如此也就是说,我们通过查询,将查询结果输出为建表语句,然后将这些语句输出到sql脚本中即可.…
, 网上有很多的ef  code first 的使用的方式,很乱,下面是我自己整理出来的,有什么不正确的地方还请指正,本人菜鸟一枚! 1.新建一个类库 =>引用 右击 管理NuGet程序包 添加EntityFramework 类库中就会有添加一个App.config 的文件,打开添加自己的连接数据库的字符串(本地数据库自己新建一个) 2.建立一个实体(比如Student) 3.新建自己的DbContext类 (比如:testContext.cs) 4.打开程序包管理控制台:工具=>库程序包管理…
由于EF Code First模式没有模型文件,所以很多一次请求的时候速度比较慢,EF需要将对应的数据库映射关系加载到内存里面,往后请求就比较快.可以通过在程序初始化的时候增加一段代码来优化EF第一次执行的速度,具体代码如下 //EF暖机操作 using (CompanyContext dbContext = new CompanyContext()) { var objectContext =((IObjectContextAdapter)dbContext).ObjectContext; v…
一.什么是视图 视图在RDBMS(关系型数据库管理系统)中扮演了一个重要的角色,它是将多个表的数据联结成一种看起来像是一张表的结构,但是没有提供持久化.因此,可以将视图看成是一个原生表数据顶层的一个抽象.例如,我们可以使用视图提供不同安全的级别,也可以简化必须编写的查询,尤其是我们可以在代码中的多个地方频繁地访问使用视图定义的数据.EF Code First模式现在还不完全支持视图,因此我们必须使用一种变通的方法.这种方法是:将视图真正看成是一张表,让EF定义这张表,然后在删除它,最后再创建一个…
1.EF Code First一对一关联关系 项目结构图: 实体类: Account.cs using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Northwind.App.Entities { public class Account { /// <summary> /// 账户ID /// </summary> public int Acco…
SportsStore是<精通ASP.NET MVC3框架(第三版)>中演示的MVC项目,在该项目中涵盖了MVC的众多方面,包括:使用DI容器.URL优化.导航.分页.购物车.订单.产品管理.图像上传......是不错的MVC实践项目,但该项目不是放在多层框架下开发的,离真实项目还有一段距离.本系列将尝试在多层框架下实现SportsStore项目,并用自己的方式实现一些功能. 本篇为系列第一篇,包括: ■ 1.搭建项目■ 2.卸载Entity Framework组件,并安装最新版本■ 3.使用…
EF的核心程序集位于System.Data.Entity.dll和System.Data.EntityFramework.dll中.支持CodeFirst的位于EntityFramework.dll中.通常使用NuGet Package Manager来添加这些程序集. 如果没有数据库:1.先写代码,自动创建数据库.2.如果代码有变化,自动删除数据库重建,或者是使用迁移功能更改已有数据库.如果已有数据库:1.使用EF PowerTools反向工程生成模型. 下面的示例程序中将通过一个控制台程序演…