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使用过程中的几个问题的更多相关文章

  1. 创建ASP.NET Core MVC应用程序(3)-基于Entity Framework Core(Code First)创建MySQL数据库表

    创建ASP.NET Core MVC应用程序(3)-基于Entity Framework Core(Code First)创建MySQL数据库表 创建数据模型类(POCO类) 在Models文件夹下添 ...

  2. MVC2、MVC3、MVC4、MVC5之间的区别 以及Entity Framework 6 Code First using MVC 5官方介绍教程

    现在MVC的技术日趋成熟,面对着不同版本的MVC大家不免有所迷惑 -- 它们之间有什么不同呢?下面我把我搜集的信息汇总一下,以便大家能更好的认识不同版本MVC的功能,也便于自己查阅. View Eng ...

  3. 【极力分享】[C#/.NET]Entity Framework(EF) Code First 多对多关系的实体增,删,改,查操作全程详细示例【转载自https://segmentfault.com/a/1190000004152660】

      [C#/.NET]Entity Framework(EF) Code First 多对多关系的实体增,删,改,查操作全程详细示例 本文我们来学习一下在Entity Framework中使用Cont ...

  4. Entity Framework 6 Code First新特性:支持存储过程

    Entity Framework 6提供支持存储过程的新特性,本文具体演示Entity Framework 6 Code First的存储过程操作. Code First的插入/修改/删除存储过程 默 ...

  5. AppBox升级进行时 - 拥抱Entity Framework的Code First开发模式

    AppBox 是基于 FineUI 的通用权限管理框架,包括用户管理.职称管理.部门管理.角色管理.角色权限管理等模块. 从Subsonic到Entity Framework Subsonic最早发布 ...

  6. [C#/.NET]Entity Framework(EF) Code First 多对多关系的实体增,删,改,查操作全程详细示例

    本文我们来学习一下在Entity Framework中使用Context删除多对多关系的实体是如何来实现的.我们将以一个具体的控制台小实例来了解和学习整个实现Entity Framework 多对多关 ...

  7. Entity Framework 之 Code First

    使用NuGet助您玩转代码生成数据————Entity Framework 之 Code First [前言] 如果是Code First老鸟或者对Entity Framework不感兴趣,就不用浪费 ...

  8. 在Entity Framework 中用 Code First 创建新的数据库

    在Entity Framework 中用 Code First 创建新的数据库 (原文链接) 本文将逐步介绍怎样用Code First 创建新数据库,使用在代码中定义类和API中提供的特性(Attri ...

  9. Entity Framework Core Code First 项目实践

    Entity Framework Core Code First 实践 任何一种技术的出现都是为了解决一系列特定的问题,只有了解了技术所要解决的关键问题,才能理解它的真正用途,之后,才能在实践中用好它 ...

随机推荐

  1. HDU 4540 威威猫系列故事——打地鼠

    威威猫系列故事--打地鼠 Time Limit: 300/100 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others) Total Su ...

  2. python27+django创建app

    python manage.py startapp polls创建一个叫polls的app 编辑文件 polls/models.py : 1 from django.db import models ...

  3. 【Java多线程】互斥

    Java多线程学习2——互斥 一.前言 在上一节 (http://www.cnblogs.com/lzhen/p/3917966.html) 中,通过实现Runnable接口,可以实现多线程中的资源的 ...

  4. ansible条件使用--实践

    ansible条件使用 1.条件使用最简单的方式 ansible中使用条件最简单的方式如下所示: [root@ansibleserver kel]# cat conditions.yml --- - ...

  5. nagios高可用性设置

    1. 前言 如何来实现nagios监控系统的高可用,监控是很重要的,在关键时刻进行通知报警,通知人员进行相应的处理. 在进行配置的时候,需要配置两台相同服务的nagios服务器,配置相同,同时在运行, ...

  6. Python超级程序员使用的开发工具

    我以个人的身份采访了几个顶尖的Python程序员,问了他们以下5个简单的问题: 当前你的主要开发任务是什么? 你在项目中使用的电脑是怎样的? 你使用什么IDE开发? 你将来的计划是什么? 有什么给Py ...

  7. 上海洋码头(www.ymatou.com)急招技术人才(职位:互联网软件开发工程师,.NET网站架构师,Web前端开发工程师,高级测试工程师,产品经理)

    对公司招聘职位有兴趣的童鞋可以把简历发送到zhangzhiqiang@ymatou.com,我们HR会快速给你答复. 互联网软件开发工程师 岗位职责: 1.参与洋码头各个平台(www.ymatou.c ...

  8. C++11 之 &quot; = delete &quot;

    1  缺省函数 设计一个类,没有成员函数 (member function),只有成员数据 (member data) class DataOnly { private: std::string st ...

  9. TopFreeTheme精选免费模板【20130703】

    今天我们给大家分享13个最新的主题模板,5款WordPress主题,5款Joomla模板,3款OpenCart主题. BowThemes – BT Folio v1.0 Template for Jo ...

  10. erlang 常用函数

    os:getpid() 获得erl.exe的进程表示符 application:start(appname,    Type), Type == permanent 表示一个应用死了,其它应用全部死掉 ...