Entity Framework 6 Code First +MVC5+MySql/Oracle使用过程中的几个问题
1、
namespace Snapsia.Web.Models
{
using System;
using System.Data.Entity;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq; [DbConfigurationType(typeof(MySql.Data.Entity.MySqlEFConfiguration))]
public partial class SnapsiaContext : DbContext
{
public SnapsiaContext()
: base("name=SnapsiaContext")
{
} public virtual DbSet<InfluencersUser> InfluencersUser { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
}
}
}
2、表“TableDetails”中列“IsPrimaryKey”的值为 DBNull
解决办法:
set global optimizer_switch='derived_merge=OFF';
http://stackoverflow.com/questions/33575109/mysql-entity-the-value-for-column-isprimarykey-in-table-tabledetails-is
http://bugs.mysql.com/bug.php?id=79163
https://dev.mysql.com/doc/refman/5.7/en/switchable-optimizations.html
3、
[Table("TB_USER", Schema = "USER_SNAPSIA")]//dbo架构在oracle数据库为用户名
public partial class TB_USER
{
[Key]
[StringLength()]
public string ID { get; set; }
[StringLength()]
public string USERNAME { get; set; }
[StringLength()]
public string PWD { get; set; }
}
public partial class OrclContext : DbContext
{
public OrclContext()
: base("name=OrclContext")
{
}
public virtual DbSet<TB_USER> TB_USER { get; set; }
public virtual DbSet<TB_SYYS> TB_SYYS { get; set; }
public virtual DbSet<TB_CCT> TB_CCT { get; set; } protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.HasDefaultSchema("USER_SNAPSIA"); //dbo架构在oracle数据库为用户名 modelBuilder.Entity<TB_USER>()
.Property(e => e.ID)
.IsUnicode(false);
}
}
4、VS2015 update3 +MySQL5.7+EntityFramework Code First
从数据库生成Code First 代码,选择连接后点击下一步,界面闪退,无法生成的解决办法。
需要安装最新版的两个组件:
mysql-connector-net-6.9.9
mysql-for-visualstudio-1.2.6
5、使用同一个上下文对象:
public static SnapsiaContext GetCurrentDbSession()
{
SnaContext context = CallContext.GetData(typeof(DbSessionContextFactory).FullName) as SnaContext;
if (context == null)
{
context = new SnaContext();
CallContext.SetData(typeof(DbSessionContextFactory).FullName, context);
}
return context;
}
6、EntityFramework Code First 优化
6.1、推荐使用IIS8.
6.2、参考文章:亲授MVC5中EF6 Code First启动慢及间隙变慢优化的实践经验
https://weblog.west-wind.com/posts/2013/Oct/02/Use-IIS-Application-Initialization-for-keeping-ASPNET-Apps-alive?utm_source=tuicool#GettingstartedwithApplicationInitialization
http://www.cnblogs.com/hantianwei/archive/2013/04/26/3044157.html
Entity Framework 6 Code First +MVC5+MySql/Oracle使用过程中的几个问题的更多相关文章
- 创建ASP.NET Core MVC应用程序(3)-基于Entity Framework Core(Code First)创建MySQL数据库表
创建ASP.NET Core MVC应用程序(3)-基于Entity Framework Core(Code First)创建MySQL数据库表 创建数据模型类(POCO类) 在Models文件夹下添 ...
- MVC2、MVC3、MVC4、MVC5之间的区别 以及Entity Framework 6 Code First using MVC 5官方介绍教程
现在MVC的技术日趋成熟,面对着不同版本的MVC大家不免有所迷惑 -- 它们之间有什么不同呢?下面我把我搜集的信息汇总一下,以便大家能更好的认识不同版本MVC的功能,也便于自己查阅. View Eng ...
- 【极力分享】[C#/.NET]Entity Framework(EF) Code First 多对多关系的实体增,删,改,查操作全程详细示例【转载自https://segmentfault.com/a/1190000004152660】
[C#/.NET]Entity Framework(EF) Code First 多对多关系的实体增,删,改,查操作全程详细示例 本文我们来学习一下在Entity Framework中使用Cont ...
- Entity Framework 6 Code First新特性:支持存储过程
Entity Framework 6提供支持存储过程的新特性,本文具体演示Entity Framework 6 Code First的存储过程操作. Code First的插入/修改/删除存储过程 默 ...
- AppBox升级进行时 - 拥抱Entity Framework的Code First开发模式
AppBox 是基于 FineUI 的通用权限管理框架,包括用户管理.职称管理.部门管理.角色管理.角色权限管理等模块. 从Subsonic到Entity Framework Subsonic最早发布 ...
- [C#/.NET]Entity Framework(EF) Code First 多对多关系的实体增,删,改,查操作全程详细示例
本文我们来学习一下在Entity Framework中使用Context删除多对多关系的实体是如何来实现的.我们将以一个具体的控制台小实例来了解和学习整个实现Entity Framework 多对多关 ...
- Entity Framework 之 Code First
使用NuGet助您玩转代码生成数据————Entity Framework 之 Code First [前言] 如果是Code First老鸟或者对Entity Framework不感兴趣,就不用浪费 ...
- 在Entity Framework 中用 Code First 创建新的数据库
在Entity Framework 中用 Code First 创建新的数据库 (原文链接) 本文将逐步介绍怎样用Code First 创建新数据库,使用在代码中定义类和API中提供的特性(Attri ...
- Entity Framework Core Code First 项目实践
Entity Framework Core Code First 实践 任何一种技术的出现都是为了解决一系列特定的问题,只有了解了技术所要解决的关键问题,才能理解它的真正用途,之后,才能在实践中用好它 ...
随机推荐
- 《A Tour of PostgreSQL Internals》学习笔记——进程间通信
中秋节假期这么快就没了,这几天还一直下雨,索性在家看看书.这次看的是Tom Lane的<A Tour of PostgreSQL Internals>.这篇小随笔就算做学习笔记了.园子里面 ...
- 【Leetcode】Sort List JAVA实现
Sort a linked list in O(n log n) time using constant space complexity. 1.分析 该题主要考查了链接上的合并排序算法. 2.正确代 ...
- selenium webdriver+windows+python+chrome遇见的问题
win7系统,在python中调用ChromeDriver 一直报错 “ selenium.common.exceptions.WebDriverException: Message: 'Chrome ...
- [转]linux之nl命令
转自:http://www.cnblogs.com/peida/archive/2012/11/01/2749048.html nl命令在linux系统中用来计算文件中行号.nl 可以将输出的文件内容 ...
- 【LeetCode】96 - Unique Binary Search Trees
Given n, how many structurally unique BST's (binary search trees) that store values 1...n? For examp ...
- 积累PDU
PDU,即专业发展单元PDUs(Professional Development Units)用来量化PMP所参与的学习和专业服务活动.典型情况下,每个小时所进行的有计划的.系统的学习或专业活动可获得 ...
- 初识 istringstream、ostringstream、stringstream 运用
今天编程练习时遇到了istringstream的用法,感觉很实用.后面附题目! C++的输入输出分为三种: (1)基于控制台的I/O (2)基于文件的I/O (3)基于字符串的I/O 1.头文件 # ...
- bzoj2940: [Poi2000]条纹
2940: [Poi2000]条纹 条纹游戏是一个双人的游戏.所需要的物品有一个棋盘以及三种颜色的长方形条纹,这三种颜色分别是红色.绿色和蓝色.所有的红色条纹的尺寸是c*1,所有的绿色条纹的尺寸是z* ...
- AS3垃圾回收整理
AS3垃圾回收整理 转自 http://bbs.wefdc.com/thread-2366-1-1.html 来源页面: http://www.adobe.com/devnet/actionscrip ...
- 从一个简单的Java单例示例谈谈并发
一个简单的单例示例 单例模式可能是大家经常接触和使用的一个设计模式,你可能会这么写 public class UnsafeLazyInitiallization { private static Un ...