是否有一个entity framework7数据库优先POCO生成器?
我一直在玩Entity Framework 7和ASP.NET 5来开发一个新的项目,但是我碰到了一个障碍。 我正在开发的团队使用DBA优先的方法进行开发。 即数据库是由DBAdevise的,然后开发者修改代码来补偿模型的变化。
使用EF6,这很好,因为我们可以使用EDMXdevise器的“更新”function来更新代码。 点击一下,我们得到新的课程,我们完成了。 但是,在EF7中,一切都不一样。 没有更多的devise师,我们应该使用Code-First,根据EF团队的博客文章,也应该支持“数据库优先”代码生成。
但是,我无法弄清楚如何在ASP.NET 5应用程序中使用Visual Studio 2015 CTP6来实现这一点。 那里还有工具支持,还是我运气不好? 它甚至到来了吗?
在最新的一点,可以使用dnx命令提示符和powershell命令来做到这一点,是的
Scaffold-DbContext '<connectionString>' EntityFramework.MicrosoftSqlServer
要么
dnx ef dbcontext scaffold "<connectionString>" EntityFramework.MicrosoftSqlServer
或(来自EF Core RC2)
dotnet ef dbcontext scaffold "<connectionString>" Microsoft.EntityFrameworkCore.SqlServer
您必须安装要运行的命令的EntityFramework.Commands和EntityFramework.MicrosoftSqlServer.Design包
这可以使用NuGet包pipe理器控制台或命令提示符完成。 我试着用命令提示符。 在命令提示符下导航到项目文件夹后,我使用了一个类似的命令:
dnx ef dbcontext scaffold "Data Source=myServerName; Initial Catalog=myDatabaseName; Integrated Security=True" EntityFramework.SqlServer
我有关于丢失的软件包的错误:
EntityFramework.Commands
EntityFramework.SqlServer.Design
继续之前是这个命令:
dnu restore
所需的实际包(s)可能会根据您在project.json文件中提到的框架而有所不同。
如果你不能在命令提示符中执行dnx或其他相关的命令,请按照另一个答案的注释中提到的这个链接。
PS :这里是目前的命令列表[在撰写本文时,上次更新8月21日]:
ASP.NET – EntityFramework Wiki – NuGet / DNX命令
这里是.NET Core的RC2的更新参数(2016年5月)
dotnet ef dbcontext scaffold -c RRStoreContext -o Model "Data Source=(local);Initial Catalog=DBNAME;Integrated Security=True" Microsoft.EntityFrameworkCore.SqlServer --force
请注意, Microsoft.EntityFrameworkCore.SqlServer
是需要在命令中使用的包的新名称。 我已经添加了force
参数来覆盖现有的文件。 “o”参数是输出目录名称。 现在是dotnet
而不是dnx
。
截至目前的版本,你需要在你的project.json
中的依赖
"dependencies": { "Microsoft.EntityFrameworkCore": "1.0.0-rc2-final", "Microsoft.EntityFrameworkCore.SqlServer.Design": "1.0.0-rc2-final", "Microsoft.EntityFrameworkCore.Tools": { "type": "build", "version": "1.0.0-preview1-final" } },
注意:“构build”types意味着任何引用你的程序集的东西都不会把这个DLL作为一个依赖项,因为它只是用于工具。
- 如何从ASP.NET Core中的Config.json中读取AppSettings值
- ASP.NET Core 1.0 Web API中的简单JWT身份validation
- 在ASP.NET Core中访问当前的HttpContext
- 哪里可以findWindows中的“dnu”命令
- 我可以在单个解决scheme中共享DNX / ASP.NET 5项目(project.json / xproj)和其他C#项目(csproj)之间的代码吗?
- 新的netstandardapp和netcoreapp TFM之间有什么区别?
- 发布到IIS,设置环境variables
- IIS 5上的ASP.NET 5项目托pipe
- ASP.NET核心中的OAuth授权服务