如何在 Servcie Fabric 项目中运行 Entity Framework 的 Enable-Migrations 命令

当我们在创建 Service Fabric 项目后,想要利用 Entity Framework 的 CodeFrist 将数据插入数据库时可能会遇到以下问题。

问题描述

使用 Visual studio 中的 nuget 管理将 Entity Framework 引入 Service Fabric 项目后,开启 Enable-Migrations,会提示 Application 项目没有安装 EntityFramework。

当我们尝试在 Application 中引入 EntityFramework 时报错:

Install-Package : Failed to add reference. The package 'EntityFramework' tried to add a framework reference to 'System.ComponentModel.DataAnnotations' which was not found in the GAC. This is possibly a bug in the package. Please contact the package owners for assistance.


解决方法

我们以 Stateless 类型的 Service Fabric 项目为例:

1.首先要确保在执行 Enable-Migrations 的时候,设定的 Default project 为 stateless project (如下面的例子:MyStateless ):


该 Service Fabric 项目的结构如下:


2.保证 stateless project (例如:MyStateless) 已被设置为 Single startup Project:


3.由于 Enable-Migrations 依赖于 MyDbContext Class,因此需要建立了一个 xxx.cs 的文件,在这个文件中对该类进行定义:


4.运行 Enable-Migrations 命令时要指定 ContextTypeName 为之前 xxx.cs 文件中的 MyDbContext Class,例如:Enable-Migrations -contexttypename MileyClass.MyDbContext。


查看运行结果可以点击此处

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 离开寝室,踏上了回家的路途 ,莫名的带着一股新奇。 刚一下楼,疾驰而过的风出租车眼角飘到到我,立刻嘟嘟的,询问我去...
    实在想不出昵称丶阅读 1,301评论 0 0
  • 什么是销售什么? 销售销售销的是什么?销的是什么,售的又是什么呢?买的是什么,卖的又是什么呢? 所谓销售中的销呢指...
    铭叶_dd4c阅读 4,631评论 0 0

友情链接更多精彩内容