新手碰到EntityFramework版本部落冲突新版本阵型,求教

china_fucan
阅读(10199)
Entity Framework7 入门之全功能.NET(Console, WinForms, WPF等)使用EF7
  昨天,我们介绍了EF的新特性和开发计划,如果你还不了解,请移步 &。今天,我们开学习全功能.NET(Full&.NET)下使用EF7。官方已经写了关于最新的 Pre-Release版本EF7.0.0-beta7的入门教程,很详细,我就没有必要自己再重复造轮子了,只因为是英文的,为了方便不少懒人(不是看不懂英文,是看着英文就不想看下去,无名的觉得复杂。还有一点就是不愿意去国外的站点去查找资料),特作一个简单的翻译。如果你不是懒人的话,请稳步(原文地址:&&& ),随便帮帮我看看,有什么不妥的地方,欢迎指正,谢谢!
  本文,我们将构建一个控制台应用,让它使用EF7执行基本的数据访问。你将在本文看到如下的知识点:
  1、安装 NuGet 2.8.6 或更高版本;
  2、创建一个新的项目;
  3、安装实体框架(EF7.0.0-beta7);
  4、创建模型;
  5、创建数据库;
  6、使用模型;
  你可以在Github上查看本文的示例:
  注意:本文使用的版本是EF7.0.0-beta7,它是在NuGet.org上可用的最新预发行版本。 你可以在 &获取最新代码的编译版本。代码变化太快,我们不会为入门教程维护最新的文档。
一、安装 NuGet 2.8.6 或更高版本
&  安装EF7需要NuGet2.8.6,或更高的版本。安装更新后,请重启你的Visual Studio。
  1、Visual Studio 2015& 不需要安装,因为它已经包含了一个兼容版本;
  2、Visual Studio 2013& 请安装;
  3、Visual Studio 2012& 请安装;
  注意:NuGet 版本号可能会造成混淆,我们所需的是 2.8.6 扩展版本2.8.60610.xxx。
二、创建一个新项目
  1、打开Visual Studio(本文使用的是Visual Studio 2015,你可以使用VS2012及以上的版本);
  2、文件(File)-&新建(New)-&项目(Project)...
  3、从左边菜单选择Template-&Visual C#-&W
  4、选择 Console Application(控制台应用)项目模板;
  5、选择.NET4.5或者更高的.NET框架;
  6、给你的项目命名,然后点确定(OK);
三、安装Entity FrameWork
  为了能使用EF7,你得先安装上你想使用的数据库及提供者(Provider),本文使用的是 SQL Server。下面是EF7下可用的数据库提供者(Database Provider)清单。
    1、EntityFramework.SqlServer    2、EntityFramework.SQLite    3、EntityFramework.InMemory    4、EntityFramework.SqlServerCompact40    5、EntityFramework.SqlServerCompact35    6、EntityFramework.Npgsql
  A、在菜单上选择Tools-&Nuget Package Manager(Nuget 程序包管理器)-&Package Manager Console(程序包管理器控制台);
  B、运行命令 &Install-Package EntityFramework.SqlServer &Pre&
  因为本文后面还要使用实体框架的相关命令来维护数据库,所以我们现在还得安装命令程序包(Commands package)。
  C、运行命令&Install-mands &Pre&;
四、创建模型
  现在是时候定义一个上下文和实体类来构建模型了。
    1、Project-&Add Class(添加类)...;
    2、键入Modle.cs作为类名,并点击OK(确定);
    3、使用下面的代码替换文件中的内容;
  注意: OnConfiguring 方法(EF7中新增的)用于定义使用的提供者,和其它可选的配置。
1 using Microsoft.Data.E
2 using System.Collections.G
4 namespace EFGetStarted.ConsoleApp
public class BloggingContext : DbContext
public DbSet&Blog& Blogs { get; set; }
public DbSet&Post& Posts { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
// Visual Studio 2015 | 使用Visual Studio创建的LocalDb 12 实例
optionsBuilder.UseSqlServer(@"Server=(localdb)\Database=EFGetStarted.ConsoleATrusted_Connection=T");
// Visual Studio 2013 | 使用Visual Studio创建的LocalDb 11 实例
// optionsBuilder.UseSqlServer(@"Server=(localdb)\v11.0;Database=EFGetStarted.ConsoleATrusted_Connection=T");
// Visual Studio 2012 | 使用Visual Studio创建的SQL Express实例20
// optionsBuilder.UseSqlServer(@"Server=.\SQLEXPRESS;Database=EFGetStarted.ConsoleATrusted_Connection=T");
protected override void OnModelCreating(ModelBuilder modelBuilder)
配置Blog.Url为Required
modelBuilder.Entity&Blog&()
.Property(b =& b.Url)
.Required();
}    //& 博客
  public class Blog
public int BlogId { get; set; }
public string Url { get; set; }
public List&Post& Posts { get; set; }
38   //& 文章
public class Post
public int PostId { get; set; }
public string Title { get; set; }
public string Content { get; set; }
public int BlogId { get; set; }
public Blog Blog { get; set; }
&五、创建数据库
  拥有模型之后,就可以使用数据迁移(Migrations)来创建数据库.
    1、在菜单上选择Tools-&Nuget Package Manager(Nuget 程序包管理器)-&Package Manager Console(程序包管理器控制台);
    2、执行命令&Add-Migration MyFirstMigration& 为刚才的模型创建一个迁移支架(scaffold);
    3、执行命令&Update-Database&& 应用一个迁移到数据库。因为数据库不存在,所以在应用迁移之前,它会为你创建一个数据库;
  提示:如果你对模型时行了修改,请使用命令&Add-Migration&支架(scaffold)一个新的迁移来应用相应的修改。你一旦检查并确认了生成的支架(scaffold)代码,便使用命令&Update-Database&应用这些修改到数据库。
六、使用模型
  现在可以使用模型执行数据访问了。
    1、打开文件 Program.
    2、使用下面的代码替换文件中的内容;
3 namespace EFGetStarted.ConsoleApp
class Program
static void Main(string[] args)
using (var db = new BloggingContext())
db.Blogs.Add(new Blog { Url = "/adonet" });
var count = db.SaveChanges();
Console.WriteLine("{0} records saved to database", count);
Console.WriteLine();
Console.WriteLine("All blogs in database:");
foreach (var blog in db.Blogs)
Console.WriteLine(" - {0}", blog.Url);
  2、Debug-&Start Without Debugging(开始执行(不调试));
  你将看到一个blog被保存到了数据库中,并在控制台打出来blog的详细内容,如图:
  正如你看到的,文中使用了数据迁移命令,随着code-first的广泛使用,相信使用它的机会会越来越多,下面我把自己使用中遇到的一常问题分享给大家。
    类似下面的异常:
enable-migrations
enable-migrations : 无法将&enable-migrations&项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。
所在位置 行:1 字符: 1
+ enable-migrations
+ ~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (enable-migrations:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException。
  导致这个问题原因一般如下:&
    1、输入的中划线&-&格式不对,检查是否为全角状态下输入,误输入了下划线&_",或是前后有空格;
    2、没有引用EntityFramework命令,请执行如下名称(Import-Module 项目路径\packages\EntityFramework.6.1.3(EF版本)\tools\EntityFramework.psd1)
&  另外需要注意的是,执行命令时,默认项目一定要选择包含模型的项目,如图:
&  说到推荐,和阅读,我有一个不明白的地方,为什么,什么这个感悟,那个经历的文章都会有很高的阅读量和推荐数呢?有一些写得比较好的博客(比如有些大牛写的DDD类的文章)却只有几百的阅读量。难道我们.NET开发人员缺少的不是技术,是心灵鸡汤? 为什么呢?你能告诉我吗?
  今天 就先说这么多吧,感谢你的阅读!
实体框架交流QQ群: &,欢迎有兴趣的朋友加入一起交流
谢谢大家的持续关注,我的博客地址:/VolcanoCloud/
&原文链接:
阅读排行榜新手求指教WinformEntityFramework我在每个窗体里这么写合适吗?和MVC的写法一样namespaceTestWinForm.ViewForms.ViewAll{publicparti
新手求指教 Winform
Entity Framework
我在每个窗体里这么写合适吗?
和MVC的写法一样
namespace TestWinForm.ViewForms.ViewAll
public partial class ViewPlansForm : Form
TestEntities db = new TestEntities();
public ViewPlansForm()
InitializeComponent();
private void barEditItem1_EditValueChanged(object sender, EventArgs e)
DateTime dateTime = Convert.ToDateTime(this.barEditItem1.EditValue);
var planModels = from m in db.Plans where m.StartTime == dateT
var PlanList = planModels.ToList();
this.gridControl1.DataSource = PlanL
【云栖快讯】支撑千亿营收,阿里如何做研发?淘宝如何做敏捷实践?如何面对开发中的“黑天鹅”事件?6月29日首届阿里研发效能嘉年华,独家直播,赶紧预约吧!&&
为您提供简单高效、处理能力可弹性伸缩的计算服务,帮助您快速构建更稳定、安全的应用,提升运维效率,降低 IT 成本...
RDS是一种稳定可靠、可弹性伸缩的在线数据库服务。支持MySQL、SQL Server、PostgreSQL、高...求教,新手碰到EntityFramework版本冲突_游戏百科_精准解答网
求教,新手碰到EntityFramework版本冲突
编辑: 精准解答网 &&&来源:用户发表&&&发布时间:&&&点击次数:39
求教咤呀,新手碰到EntityFramework版本冲突?在线等。
【知识探讨】
新手碰到EntityFramework版本冲突,求教
已安装的包里没有的话,就直接安装. 然后找到那个 EntityFramework 升级一下.
关于hibernate映射问题,求教大神?实在没看出问题...
&?xml version="1.0" encoding="utf-8"?& &!DOCTYPE hibernate-mapping ...提示的蛮明显的嘛,找不到这个类 com.mycompany.domain.LeaveMessage。建议: 查看类包结构,以及大小写是否正确 检查代码是否正常编译了
ASP.NET运行时错误:未能加载文件或程序集或它的某...
前两天这个web程序还可以运行,什么事都没有,今天再次打开后就不行了,...这是你的解决方案出现了问题,在项目的解决方案上,鼠标右键点击,然后选择重新生成整个解决方案,就可以了。 同时,你要做好时常备份的好习惯,开发一套,备份一套到两...
用EntityFramework连接oracle时,需要在开发环境里...
因为是c/s架构的,如果每个客户端都要求安装ODTwithODAC 就是在太麻烦了...oracle client是有免安装版本的,就几个dll文件,打包的时候嵌入进去就哦了
新手碰到EntityFramework版本冲突,求教
步骤如下: 工具- 库程序包管理器 - 程序包管理控制台 1.从NuGet 卸载 ef*.修改原语句 Install-Package CVersion Install-Package EntityFramework CVersion 5.0.0 从NuGet管理器中就可以查看 或者在 packages.config 中查看 知道就直接填上。
游戏百科相关
更多相关内容
本站内容来自网友发布,本站无法保证其部分内容的正确性,请用户一定仔细辨别。
[] &&[联系QQ:885&971&98] &
沪ICP备号&

我要回帖

更多关于 部落冲突最新版本下载 的文章

 

随机推荐